/// <summary> /// Populates the view with the information in the DataRow /// </summary> /// <param name="view"></param> /// <param name="row"></param> protected override void FillViewData(DBSchemaView view, DataRow row) { DataTable tbl = row.Table; DataColumn name = GetColumn(tbl, "TABLE_NAME", true); DataColumn update = GetColumn(tbl, "IS_UPDATABLE", true); view.Name = GetColumnStringValue(row, name); view.IsUpdateable = GetColumnBoolValue(row, update); }
protected override void FillViewData(DBSchemaView view, DataRow row) { DataColumn cat = GetColumn(row.Table, "CATALOG", false); DataColumn schema = GetColumn(row.Table, "OWNER", false); DataColumn name = GetColumn(row.Table, "VIEW_NAME", true); DataColumn update = GetColumn(row.Table, "READ_ONLY", false); view.Catalog = GetColumnStringValue(row, cat); view.Schema = GetColumnStringValue(row, schema); view.Name = GetColumnStringValue(row, name); view.IsUpdateable = !GetColumnBoolValue(row, update, false); }
public override void GenerateCreateViewScript(DBSchemaView schemaView, DBQuery script) { if (null == schemaView) { throw new ArgumentNullException("schemaView"); } if (string.IsNullOrEmpty(schemaView.Name)) { throw new ArgumentNullException("schemaView.Name"); } if (schemaView.Type != DBSchemaTypes.View) { throw new ArgumentOutOfRangeException("schemaView.Type"); } if (null == script) { throw new ArgumentNullException("script"); } this.BeginCreate(DBSchemaTypes.View, null); this.WriteSourceTable(schemaView.Catalog, schemaView.Schema, schemaView.Name, null); if (schemaView.Columns != null && schemaView.Columns.Count > 0) { List <DBSchemaColumn> col = this.SortColumnsByOrdinal(schemaView.Columns.GetColumns()); this.BeginBlock(); for (int i = 0; i < col.Count; i++) { this.WriteSourceField(null, null, null, col[i].Name, null); if (i < col.Count - 1) { this.WriteReferenceSeparator(); } } this.EndBlock(); } this.WriteRawSQLString(" AS "); script.BuildStatement(this); }
/// <summary> /// /// </summary> /// <param name="tb"></param> /// <returns></returns> public JsonResult GetFields(string clientid, string tb) { System.Data.DataTable dt = new DataTable(); ClientServer c = new ClientServer(clientid); Data.DBDatabase db = Data.DBDatabase.Create(c.GetServer().Connection(), "MySql.Data.MySqlClient"); // Data.DBDatabase db = Data.DBDatabase.Create("Server=52.163.241.42; Uid=admin;Pwd=smrtalentoz3106;Initial Catalog=jumbo_talentoz; ", "MySql.Data.MySqlClient"); Data.Schema.DBSchemaProvider provider = db.GetSchemaProvider(); DBSchemaTable tables = provider.GetTable(tb); if (tables == null) { DBSchemaView view = provider.GetView(tb); return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(view), JsonRequestBehavior.AllowGet)); } else { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(tables), JsonRequestBehavior.AllowGet)); } }