2012-03-09 101 views
1

我正在構建一個ms sql數據庫的web前端。我們的目標是遠離訪問97.基本上,我可以從Web前端將數據插入到數據庫中。我可以在Access 97中查看記錄所插入的數據庫表。Web前端可以很好地寫入,更新和刪除數據庫中的記錄。訪問97 ODBC調用失敗字符串數據,右截斷

的問題是,我得到在Access 97 ODBC呼叫失敗字符串數據,右截斷誤差只有當我嘗試編輯從web前端添加在訪問行。當我嘗試編輯通過sql語句直接添加到ms sql數據庫的Access 97中的記錄時,也會發生該錯誤。

絕對沒有錯被插入到MS SQL數據庫中的數據。我不知道Access如何工作。我試着運行配置文件來查看Access和ms sql db之間的SQL事務,但我無法弄清楚爲什麼訪問更新失敗。

是如何訪問行更新不是直接更新到Access應用程序是使用MS SQL數據庫有什麼不同?

編輯:我解決了這個問題。表中有一列是二進制長度爲50的類型。這是一個不真正使用的列,所以每次插入時,都爲此列插入0。在更改此插入值爲null之後,它解決了問題。如果選中此項,則驅動程序轉換

enter image description here

:Access無法柄長50

+0

當你說「當我嘗試在Access中編輯行」時,你如何訪問數據?這是通過一個鏈接表,你有表格數據直接打開,或者它顯示在Access窗體上? – Dan 2012-03-09 17:44:33

+0

我不確定您的鏈接表是什麼意思,但我在Access中打開表格。我不編輯表格中的行。 – user1152226 2012-03-09 17:50:24

回答

0

檢查ODBC連接字符串訪問被使用來連接到MS SQL數據庫的二進制值數字轉換爲當地的區域格式,其中可能包括數千個指示符(例如1000而不是1000)。這增加了返回數據的長度,並且可能會使用緩衝區。

要修復,請確保該選項未勾選。

+0

這沒有奏效。這在所有ODBC配置中都沒有選中。另外我使用MS SQL 2000和訪問97,而不是SQL Server 2008 – user1152226 2012-03-09 18:21:33