我正在以编程方式在访问数据库中的表上创建索引:
CREATE INDEX ind ON tableA (columnb);
在尝试创建索引之前,有没有办法可以做“如果不存在”?
谢谢!
答案 0 :(得分:1)
我认为你对Access不是那么整洁,但这里有一些注意事项。我对C#一无所知,所以以下仅基于Access的一些知识。
string connectionString =
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\docs\\some.mdb";
OleDbConnection con = new OleDbConnection(connectionString);
con.Open();
//Number of restriction columns: 5
//Restriction columns: TABLE_CATALOG, TABLE_SCHEMA, INDEX_NAME, TYPE, TABLE_NAME
string[] restrictions = new string[5];
restrictions[2] = "SomeKey";
restrictions[4] = "SomeTable";
System.Data.DataTable table = con.GetSchema("Indexes",restrictions);
参考
http://msdn.microsoft.com/en-us/library/cc668764.aspx
http://msdn.microsoft.com/en-us/library/ms135852.aspx
http://msdn.microsoft.com/en-us/library/ms709712(v=vs.85).aspx