|
分類:[C#]
いつもお世話になっております。
データベース(Sql, mdb)のテーブルインデックスが一意(UNIQUE)かどうかの判断を行いたいと考えております。
いくつかのサイトには下記のようにしてあたかも取得出来るかのように記載されています。
string[] restrictionValues = new string[] { null, null, "TableName", null }; DataTable tbl = con.GetSchema("Indexes", restrictionValues); foreach (DataRow row in tbl.Rows) { string str = string.Format("{0,10}\t{1,15}\t{2,7}\t{3,20}\t{4,5}", row["TABLE_NAME"], row["INDEX_NAME"], row["UNIQUE"], row["COLUMN_NAME"]); }
これを行うとUNIQUEを指定した段階で例外が発生します。 その他の値は取れます。
GetSchemaからUNIQUE情報を取得することは無理なのでしょうか?
他の方法でも取得方法があれば教えて頂けると幸いです。
|