2016-11-22 72 views
0

我正在訪問數據庫,我需要從單擊表單時將數據插入到表中。這是我的代碼,但它不起作用。我的字段名稱是阿拉伯語,並沒有工作

由於是阿拉伯語,我的字段名稱存在問題嗎?

Dim strInsert As String 
Dim db As DAO.Database 


strInsert = "INSERT INTO ÇáÍÖæÑ æ ÇáÇäÕÑÇÝ [(ÑÞã ÇáãáÝ )] values ('" & fileNO.Value & "');" 

Debug.Print strInsert 

db.Execute strInsert 

Set db = Nothing 

注:未定義的字符是阿拉伯名字

+0

Access內部環境的編碼很可能與腳本工具不同。數據庫也有可能是以與現在不同的編碼方式創建的。所以,我建議你改變目前的編碼,直到你找到合適的編碼。 – JCalcines

+0

我怎麼能這樣做? –

回答

2

沒有與阿拉伯沒有probleme,你剛剛當您創建數據庫使用UTF-8編碼。

CREATE DATABASE "myDataBase" 
ENCODING = 'UTF8'; 

我試着插入請求和它的工作:

INSERT INTO test(id, data) VALUES (8888, 'أحمد'); 
+0

我的表和字段名稱是阿拉伯語不包括數據....也我工作微軟訪問不是一個SQL服務器....和這個SQL語句我寫在VBA代碼 –

+0

有沒有問題,你只需在引號之間加上表格名稱=>「قاعدة」 – bilelovitch

+0

也許,這是一個排序問題。使用這個命令:ALTER DATABASE(數據庫名稱在這裏)COLLATE Arabic_CI_AS; src:https://msdn.microsoft.com/en-us/library/ff929080.aspx – bilelovitch

1

最簡單的辦法就是暫時重命名字段名的英文名(拉丁字母)。

請避免在字段名稱中使用非拉丁文名稱。

+0

oh no ..對於數據庫根本沒有其他解決方案 –

+0

根據我自己的經驗,我總是避免這種情況,試着用阿拉伯語顯示標籤(標題)所以在表示層而不是數據庫層。 您可以使用列的「標題」屬性能在阿拉伯語中顯示標題,而字段名仍然拉丁 檢查這張截圖知道我恰恰意味着: http://prntscr.com/dapc8e – Peshmerge

+0

謝謝,我做了什麼...現在它運作良好 –