private List <Table> GetDB2Tables(string connectionString) { List <Table> _tables = new List <Table>(); try { DataTable dt = generatorDL.GetDB2Tables(connectionString); List <string> tables = DbDataUtil.GetColumnAsUniqueList(dt, "tbname"); Table _table; DataRow[] rows; List <Column> cols; foreach (string tbl in tables) { _table = new Table() { TableName = tbl }; cols = new List <Column>(); rows = dt.Select(string.Format("tbname='{0}'", tbl)); foreach (DataRow row in rows) { cols.Add(new Column(string.Format("{0}", row["name"]), string.Format("{0}", row["coltype"]))); } _table.TableColumns = cols; } } catch (Exception) { throw; } return(_tables); }
private List <Table> GetOracleTablesM(string connectionString) { List <Table> _tables = new List <Table>(); try { DataTable dt = generatorDL.GetOracleTables(connectionString); List <string> tables = DbDataUtil.GetColumnAsUniqueList(dt, "TABLE_NAME"); Table _table; DataRow[] rows; List <Column> cols; Column col; foreach (string tbl in tables) { _table = new Table() { TableName = tbl }; cols = new List <Column>(); rows = dt.Select(string.Format("TABLE_NAME='{0}'", tbl)); foreach (DataRow row in rows) { col = new Column { ColumnName = string.Format("{0}", row["COLUMN_NAME"]), DataType = string.Format("{0}", row["DATA_TYPE"]), IsRequired = string.Format("{0}", row["NULLABLE"]).Trim() == "N" ? 1 : 0 }; cols.Add(col); } _table.TableColumns = cols; /* * rows = null; * rows = dt.Select(string.Format("table_name='{0}' AND coltype IN(6, 18, 53)", tbl)); * * foreach (DataRow row in rows) * { * _table.IdColumn = string.Format("{0}", row["colname"]); * break; * } * */ _tables.Add(_table); rows = null; } } catch (Exception e) { throw; } return(_tables); }
private List <Table> GetSqlServerTables(string connectionString) { List <Table> tableList = new List <Table>(); try { DataTable dt = new DataTable(); dt = generatorDL.GetSqlServerTables(connectionString); List <string> tables = DbDataUtil.GetColumnAsUniqueList(dt, "TABLE_NAME"); DataRow[] rows; List <Column> columns; Table tbl; foreach (string strTable in tables) { tbl = new Table() { TableName = strTable }; columns = new List <Column>(); rows = dt.Select(string.Format("TABLE_NAME='{0}'", strTable)); foreach (DataRow rw in rows) { //columns.Add(new Column(rw["COLUMN_NAME"].ToString(), rw["DATA_TYPE"].ToString())); Column cl = rw.RowToObject <Column>(dt.Columns); columns.Add(cl); if (cl.IdentityState == 1 && string.IsNullOrWhiteSpace(tbl.IdColumn)) { tbl.IdColumn = cl.ColumnName; } } tbl.TableColumns = columns; /* * rows = null; * rows = dt.Select(string.Format("TABLE_NAME='{0}' AND IdentityState=1", strTable)); * * foreach (DataRow rw2 in rows) * { * tbl.IdColumn = rw2["COLUMN_NAME"].ToString(); * break; * } */ tableList.Add(tbl); } } catch (Exception e) { throw; } return(tableList); }
private List <Table> GetOdbcTable(string connectionString) { List <Table> tableList = new List <Table>(); try { DataSet ds = new DataSet(); DataTable dt = new DataTable(); ds = generatorDL.GetOdbcTable(connectionString); List <string> tables = DbDataUtil.GetColumnAsUniqueList(ds.Tables[0], "TABLE_NAME"); DataRow[] rows; List <Column> columns; Table tbl; dt = ds.Tables[1]; foreach (string strTable in tables) { tbl = new Table() { TableName = strTable }; columns = new List <Column>(); rows = dt.Select(string.Format("TABLE_NAME='{0}'", strTable)); foreach (DataRow rw in rows) { columns.Add(new Column { ColumnName = rw["COLUMN_NAME"].ToString(), DataType = rw["TYPE_NAME"].ToString() }); } tbl.TableColumns = columns; /* * Identity Column bulunacak. */ rows = null; rows = dt.Select(string.Format("TABLE_NAME='{0}' AND TYPE_NAME='int identity'", strTable)); foreach (DataRow rw2 in rows) { tbl.IdColumn = rw2["COLUMN_NAME"].ToString(); } tableList.Add(tbl); } } catch (Exception e) { throw; } return(tableList); }
private List <Table> GetPostgreSQLTables(string connectionString) { List <Table> tableList = new List <Table>(); try { DataTable dt = new DataTable(); dt = generatorDL.GetPostgreSQL(connectionString); List <string> tables = DbDataUtil.GetColumnAsUniqueList(dt, "table_name"); DataRow[] rows; List <Column> columns; Table tbl; foreach (string strTable in tables) { tbl = new Table() { TableName = strTable }; columns = new List <Column>(); rows = dt.Select(string.Format("table_name='{0}'", strTable)); foreach (DataRow rw in rows) { columns.Add(new Column { ColumnName = rw["column_name"].ToString(), DataType = rw["udt_name"].ToString() }); } tbl.TableColumns = columns; /* * Identity Column bulunacak. */ rows = null; rows = dt.Select(string.Format("table_name='{0}' AND udt_name LIKE '%int%' AND column_default LIKE '%nextval%'", strTable)); foreach (DataRow rw2 in rows) { tbl.IdColumn = rw2["column_name"].ToString(); break; } tableList.Add(tbl); } } catch (Exception e) { throw; } return(tableList); }
private List <Table> GetFireBirdTables(string connectionString) { List <Table> _tables = new List <Table>(); try { DataTable dt = generatorDL.GetFireBirdTables(connectionString); List <string> tables = DbDataUtil.GetColumnAsUniqueList(dt, "Table_Name"); Table _table; DataRow[] rows; List <Column> cols; foreach (string tbl in tables) { _table = new Table() { TableName = tbl }; cols = new List <Column>(); rows = dt.Select(string.Format("Table_Name='{0}'", tbl)); foreach (DataRow row in rows) { cols.Add(new Column(string.Format("{0}", row["Column_Name"]), FireBirdUtil.GetIntFrom(ConvertUtil.ToInt(string.Format("{0}", row["coltype"]))))); } _table.TableColumns = cols; /* * rows = null; * rows = dt.Select(string.Format("table_name='{0}' AND coltype IN(6, 18, 53)", tbl)); * * foreach (DataRow row in rows) * { * _table.IdColumn = string.Format("{0}", row["colname"]); * break; * } * * _tables.Add(_table); * rows = null; */ } } catch (Exception) { throw; } return(_tables); }
private List <Table> GetVistaDBTables(string connectionString) { List <Table> tableList = new List <Table>(); try { DataTable dt = new DataTable(); dt = generatorDL.GetVistaDBTables(connectionString); List <string> tables = DbDataUtil.GetColumnAsUniqueList(dt, "table_name"); DataRow[] rows; List <Column> columns; Table tbl; foreach (string strTable in tables) { tbl = new Table() { TableName = strTable }; columns = new List <Column>(); rows = dt.Select(string.Format("table_name='{0}'", strTable)); foreach (DataRow rw in rows) { columns.Add(new Column(rw["column_name"].ToString(), rw["data_type"].ToString())); } tbl.TableColumns = columns; /* * Identity Column bulunacak. */ rows = null; rows = dt.Select(string.Format("table_name='{0}' AND is_identity=true", strTable)); foreach (DataRow rw2 in rows) { tbl.IdColumn = rw2["column_name"].ToString(); break; } tableList.Add(tbl); } } catch (Exception) { throw; } return(tableList); }
private List <Table> GetMySQLAndMariaDbTables(string connectionString) { List <Table> tableList = new List <Table>(); try { DataTable dt = new DataTable(); dt = generatorDL.GetMySQLAndMariaDbTables(connectionString); List <string> tables = DbDataUtil.GetColumnAsUniqueList(dt, "TABLE_NAME"); DataRow[] rows; List <Column> columns; Table tbl; foreach (string strTable in tables) { tbl = new Table() { TableName = strTable }; columns = new List <Column>(); rows = dt.Select(string.Format("TABLE_NAME='{0}'", strTable)); foreach (DataRow rw in rows) { columns.Add(new Column(rw["COLUMN_NAME"].ToString(), rw["DATA_TYPE"].ToString())); } tbl.TableColumns = columns; rows = null; rows = dt.Select(string.Format("TABLE_NAME='{0}' AND EXTRA='auto_increment'", strTable)); foreach (DataRow rw2 in rows) { tbl.IdColumn = rw2["COLUMN_NAME"].ToString(); break; } tableList.Add(tbl); } } catch (Exception) { throw; } return(tableList); }
private List <Table> GetSqliteTables(string connectionString) { List <Table> tableList = new List <Table>(); try { DataTable dt = generatorDL.GetSqliteTables(connectionString); List <string> tables = DbDataUtil.GetColumnAsUniqueList(dt, "tbl_name"); List <Column> columns; Table tbl; DataTable dtColumns; foreach (string strTable in tables) { tbl = new Table() { TableName = strTable }; columns = new List <Column>(); dtColumns = generatorDL.GetSqliteColumns(connectionString, strTable); foreach (DataRow row in dtColumns.Rows) { columns.Add(new Column(row["name"].ToString(), row["type"].ToString())); if (ConvertUtil.ToInt(string.Format("{0}", row["pk"])) == 1) { tbl.IdColumn = row["name"].ToString(); } } tbl.TableColumns = columns; tableList.Add(tbl); } } catch (Exception) { throw; } return(tableList); }