public static string GetShowCreateStoreProcSql(this MySqlStoreProcInfo storeFunc, MySqlConnection conn) { var cmd = new MySqlCommand("show create procedure " + storeFunc.Name, conn); var reader = cmd.ExecuteReader(); string createTableSql = null; int ord_createProc = reader.GetOrdinal("Create Procedure"); while (reader.Read()) { createTableSql = reader.GetString(ord_createProc); } reader.Close(); return(createTableSql); }
public static void ReloadStoreProcList(this MySqlDatabaseInfo db, MySqlConnection conn, bool readDetail = false) { Use(db, conn); //----------------------------------- //To find out what tables the default database contains var cmd = new MySqlCommand("show procedure status where db=?db", conn); List <MySqlStoreProcInfo> storeProcList = new List <MySqlStoreProcInfo>(); cmd.Parameters.AddWithValue("?db", db.Name); var reader = cmd.ExecuteReader(); int ord_name = reader.GetOrdinal("Name"); int ord_type = reader.GetOrdinal("Type"); int ord_definer = reader.GetOrdinal("Definer"); int ord_modifed = reader.GetOrdinal("Modified"); int ord_created = reader.GetOrdinal("Created"); while (reader.Read()) { MySqlStoreProcInfo storeProc = new MySqlStoreProcInfo(reader.GetString("Name")); storeProc.OwnerDatabase = db; storeProcList.Add(storeProc); } reader.Close(); //------------- db.StoreProcs = storeProcList; //------------ if (readDetail) { foreach (MySqlStoreProcInfo proc in storeProcList) { proc.Sql = proc.GetShowCreateStoreProcSql(conn); } } }