我现在已经找了一段时间,但我还没有找到任何相关信息。我试图通过ODBC从SPECIFIC数据库中获取所有表的列名。
我一直在尝试使用conn.GetSchema("Tables")
和conn.GetSchema("Columns")
。问题是它返回了我服务器内的所有表
我有多个数据库(即数据库'''''' Cooks''等)和我' m试图从一个特定的数据库中获取表格和列(即只有''食物'')。
我的连接字符串确实指定了正确的数据库,但在使用GetSchema
时似乎忽略了它。
有人可以帮忙吗?这是我现在使用的代码
DataTable tables = conn.GetSchema("Tables");
DataTable columns = conn.GetSchema("Columns");
foreach (DataRow r in tables.Rows)
{
string name = r["TABLE_NAME"].ToString();
}
foreach (DataRow row in columns.Rows)
{
string name = row["COLUMN_NAME"].ToString();
if (!allMongoInfo.ContainsKey(name)) //Dictionary
issuesImpala.Add (name);
}
答案 0 :(得分:0)
我不确定这是否适用于您的ODBC驱动程序,但这是使用GetSchema
的{{1}}方法获取该表的一个表和/或列的方法
OdbcConnection
GetSchema方法的此重载接受一个字符串数组,表示返回数据的限制。
您可以在MSDN {/ 3}}