我有一個非常古老的Big5 Jet數據庫,我想轉換爲Unicode和SQLite。如何從C#中的Windows 7 en-US上的Big5 Jet數據庫查詢表?
這裏的第一步是實際打開jet數據庫。使用C#ADO,我可以枚舉Jet DB中的表。它們全都是亂碼,這在Windows 7 en-US上有望實現。
現在,如果我只是把這些表名和把它們變成一個簡單的
select * from "[garbled text]"
Jet數據庫會抱怨怎麼也找不到該表。同樣,如果我嘗試將jet數據庫加載到Microsoft Access 2010中,它能夠查看錶,但不能從中查詢。
在對此進行了一段時間的研究之後,我決定啓動具有Big5/Code Page 950支持的Windows XP zh-tw數據庫的原始主機。
我將與Windows 7 zh-tw完全相同的失敗二進制文件放入Windows XP zh-tw。我運行EXE和繁榮,它能夠查詢表沒有問題。
我真的很想能夠在Windows 7上做到這一點,我也很喜歡這樣做,而不依賴於主機文化。
事情我已經嘗試過,但失敗:
- 變更線文化來實例化Jet數據庫對象的線程的ZH-TW。
在ADO源字符串指定區域設置:
Provider=Microsoft.Jet.OLEDB.4.0;Locale Identifier=950;
Jet數據庫也有自己的線程池,但我不知道怎麼去這些線程改變自己的文化。
有什麼我可以做查詢在Windows 7上的en-US從這個數據庫中的表?
這與問題無關。而且,它忽略了程序獨立於系統文化/區域的要求。 – RLiao