public static void T_CreateDatabaseInfo_SqlTableToCsMapperCodeGen() { var connStr = GetMySqlConnString(); var conn = new MySqlConnection(connStr); conn.Open(); var serverInfo = new MySqlDbServerInfo("test"); serverInfo.ReloadDatabaseList(conn); var csCodeGen = new SharpConnect.MySql.CodeMapper.CsCodeMapperGenerator(); csCodeGen.StBuilder = new StringBuilder(); foreach (MySqlDatabaseInfo db in serverInfo.Databases) { db.ReloadTableList(conn, true); foreach (MySqlTableInfo tbl in db.Tables) { if (tbl.Name == "test_table") { csCodeGen.GenerateCsCodeForSqlTable(tbl); } } } //-------------------- conn.Close(); }
public static void T_CreateDatabaseInfo_Utils() { var connStr = GetMySqlConnString(); var conn = new MySqlConnection(connStr); conn.Open(); MySqlDbServerInfo serverInfo = new MySqlDbServerInfo("test"); serverInfo.ReloadDatabaseList(conn); foreach (MySqlDatabaseInfo db in serverInfo.Databases.Values) { db.ReloadTableList(conn, true); db.ReloadStoreFuncList(conn, true); db.ReloadStoreProcList(conn, true); foreach (MySqlTableInfo tbl in db.Tables) { //we can find more detail from 'show create table ...' sql string createTableSql = tbl.GetShowCreateTableSql(conn); } foreach (MySqlStoreProcInfo storeProc in db.StoreProcs) { string createdBySql = storeProc.Sql; } foreach (MySqlStoreFuncInfo storeFunc in db.StoreFuncs) { string createdBySql = storeFunc.Sql; } } //-------------------- conn.Close(); }
public static void T_CreateDatabaseInfo_SqlTableToCsMapperCodeGen() { var connStr = GetMySqlConnString(); var conn = new MySqlConnection(connStr); conn.Open(); var serverInfo = new MySqlDbServerInfo("test"); serverInfo.ReloadDatabaseList(conn); var csCodeGen = new SharpConnect.MySql.SqlLang.MySqlInfoToCsCodeGenerator(); StringBuilder outputStBulder = new StringBuilder(); foreach (MySqlDatabaseInfo db in serverInfo.Databases.Values) { db.ReloadTableList(conn, true); foreach (MySqlTableInfo tbl in db.Tables) { //just test if (tbl.Name == "test001") { // string createSql = ""; string sql = "SHOW CREATE TABLE " + db.Name + "." + tbl.Name; var cmd = new MySqlCommand(sql, conn); var reader = cmd.ExecuteReader(); if (reader.Read()) { createSql = reader.GetString(1); } reader.Close(); //----------------------- if (createSql != "") { var parser = new SharpConnect.MySql.SqlLang.MySqlParser(); parser.ParseSql(createSql); if (parser.ResultTables.Count > 1) { csCodeGen.GenerateCsCode(parser.ResultTables[0], outputStBulder); } } } } } //-------------------- conn.Close(); }
private void tlstrpRefreshDBs_Click(object sender, EventArgs e) { //generate list of databases //and its table var connStr = GetLocalConnString(); var conn = new MySqlConnection(connStr); conn.Open(); //connect to server name MySqlDbServerInfo serverInfo = new MySqlDbServerInfo("test"); serverInfo.ReloadDatabaseList(conn); this.treeView1.Nodes.Clear(); foreach (MySqlDatabaseInfo dbInfo in serverInfo.Databases.Values) { dbInfo.ReloadTableList(conn, true); dbInfo.ReloadStoreFuncList(conn, true); dbInfo.ReloadStoreProcList(conn, true); //show database ... TreeNode dbNode = new TreeNode("database:" + dbInfo.Name); dbNode.Tag = dbInfo; this.treeView1.Nodes.Add(dbNode); foreach (MySqlTableInfo tbl in dbInfo.Tables) { TreeNode tblNode = new TreeNode("table:" + tbl.Name); tblNode.Tag = tbl; foreach (MySqlColumnInfo colInfo in tbl.Columns) { TreeNode colNode = new TreeNode("col:" + colInfo.Name + "," + colInfo.FieldTypeName); colNode.Tag = colInfo; tblNode.Nodes.Add(colNode); } dbNode.Nodes.Add(tblNode); //show table information } } conn.Close(); }