Paradox數據庫是一個成名於15年前的數據庫,那時候Borland公司還存在。最近客戶提出需求,要在一套用了12年+的應用程序上作些功能更改。這套應用程序使用Delphi+Paradox數據庫。 Delphi和Paradox一樣太古老,現在會這玩意的人應該不多了吧。想想一種語言太依賴一家公司,結果往往就是這樣(真替C#擔憂)。最后客戶同意使用C#開發一個外掛程序,但是數據庫自然還是要用Paradox。 經過反復嘗試,最終成就了下面的攻略。
環境:Win7 64 位 + VS2012
步驟一:安裝BDE52,這版本支持安裝在Win7 64 位。BDE驅動自身還是32位的。安裝完后打開控制面板應能看到BDE Administrator( 如下).配置Paradox的NET DIR屬性,默認是C盤的根目錄,因為Win7下C盤的根目錄寫權限是受控的。所以建議更改至其他目錄。
步驟二:打開VS2012,創建windows項目(略),一定注意以下配置(調成X86環境):
步驟三:輸入以下代碼訪問數據庫(大家都懂得,不多說):
1 private string connectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Data\;Extended Properties=Paradox 5.x"; 2 3 private OleDbConnection conn; 4 5 public Form1() 6 { 7 InitializeComponent(); 8 conn = new OleDbConnection(connectionString); 9 } 10 11 12 private void button1_Click(object sender, EventArgs e) 13 { 14 try 15 { 16 this.dgvData.DataSource = FillTable("SELECT * FROM tbl_A WHERE No = '000012345'"); 17 } 18 catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error!"); } 19 20 } 21 22 23 private DataTable FillTable(string sql) 24 { 25 DataTable table = new DataTable(); 26 27 using (OleDbDataAdapter da = new OleDbDataAdapter(sql, conn)) 28 { 29 da.Fill(table); 30 } 31 32 return table; 33 }
結束。