2010-02-15 65 views
0

我試圖在我的SQL Server 2005數據庫中獲取表的外鍵。我使用於GetOleDbSchemaTable功能現在:Sql Server 2005上的GetOleDbSchemaTable外鍵

DataTable schemaTable = connection.GetOleDbSchemaTable(
     OleDbSchemaGuid.Foreign_Keys, 
     new object[] { null, null, null, "TABLE" }); 

這拉回到正確的外鍵,唯一的問題是,UpdateRule和DeleteRule被設置爲「不採取行動」。如果我瀏覽SSMS中的同一張表,我可以看到我的DeleteRule是「Set NULL」。 GetOleDbSchemaTable函數是否不返回正確的外鍵規則?有沒有人遇到這個問題?

回答

0

我不確定爲什麼OleDb會返回不正確的信息,但您是否嘗試過使用SqlConnectionGetSchema來代替?他們是MSSQL特定的,因此可能會產生更好的結果。