private MySqlSchemaCollection GetTable(string sql) { MySqlSchemaCollection c = new MySqlSchemaCollection(); MySqlCommand cmd = new MySqlCommand(sql, connection); MySqlDataReader reader = cmd.ExecuteReader(); // add columns for (int i = 0; i < reader.FieldCount; i++) { c.AddColumn(reader.GetName(i), reader.GetFieldType(i)); } using (reader) { while (reader.Read()) { MySqlSchemaRow row = c.AddRow(); for (int i = 0; i < reader.FieldCount; i++) { row[i] = reader.GetValue(i); } } } return(c); }
private MySqlSchemaCollection GetProceduresWithParameters(string[] restrictions) { MySqlSchemaCollection dt = GetProcedures(restrictions); dt.AddColumn("ParameterList", typeof(string)); foreach (MySqlSchemaRow row in dt.Rows) { row["ParameterList"] = GetProcedureParameterLine(row); } return(dt); }
internal MySqlSchemaCollection CreateParametersTable() { MySqlSchemaCollection dt = new MySqlSchemaCollection("Procedure Parameters"); dt.AddColumn("SPECIFIC_CATALOG", typeof(string)); dt.AddColumn("SPECIFIC_SCHEMA", typeof(string)); dt.AddColumn("SPECIFIC_NAME", typeof(string)); dt.AddColumn("ORDINAL_POSITION", typeof(Int32)); dt.AddColumn("PARAMETER_MODE", typeof(string)); dt.AddColumn("PARAMETER_NAME", typeof(string)); dt.AddColumn("DATA_TYPE", typeof(string)); dt.AddColumn("CHARACTER_MAXIMUM_LENGTH", typeof(Int32)); dt.AddColumn("CHARACTER_OCTET_LENGTH", typeof(Int32)); dt.AddColumn("NUMERIC_PRECISION", typeof(byte)); dt.AddColumn("NUMERIC_SCALE", typeof(Int32)); dt.AddColumn("CHARACTER_SET_NAME", typeof(string)); dt.AddColumn("COLLATION_NAME", typeof(string)); dt.AddColumn("DTD_IDENTIFIER", typeof(string)); dt.AddColumn("ROUTINE_TYPE", typeof(string)); return(dt); }