用Delphi內建的Database Desktop工具開啟db檔案,編輯表,給某欄位建立索引就可以了,會產生一個xxx.px索引檔案
參考如下文檔,其中4裡面的第二條就是了
http://support.microsoft.com/kb/q175168/
4. 最後一個問題和替代方法適用於所有 SQL 資料來源。違反資料庫的參考完整性的 SQL 陳述式可以導致出現此錯誤。下面是一些最常見的失敗的查詢:
• 其中最簡單的一組查詢是以下您無法更改的查詢:UniqueValue 屬性設定為 Yes 的交叉資料表查詢、SQL 傳遞查詢、聯集查詢或更新(即產生表)操作查詢。
• 另一種非常常見的原因是聯結包含的連結 ODBC 表的索引不是唯一的。在這種情況下,SQL 無法保證表中的記錄是唯一,該表中欄位的值將隨查詢發生更改。
• 有一種原因確實有可靠的替代方法。如果您嘗試更新“一對多”查詢的“一”方的聯結欄位,操作將會失敗,除非您啟用串聯更新。因為這樣您就可以將參考完整性委託給 JET 引擎。
參考代碼
string ConnectionString = @"Driver={Microsoft Paradox Driver (*.db )};DriverID=538;Fil=Paradox 5.X;DefaultDir=C:Paradox;Dbq=C:Paradox;CollatingSequence=ASCII;PWD=;";
using (System.Data.Odbc.OdbcConnection conn = new System.Data.Odbc.OdbcConnection(ConnectionString))
...{
conn.Open();
using (System.Data.Odbc.OdbcCommand command = conn.CreateCommand())
...{
command.CommandText = " update test set aa=14";
command.ExecuteNonQuery();
command.CommandText = "select * from test";
Console.WriteLine(command.ExecuteScalar());
}
}