我正在將訪問2003數據庫升級到SQL Server Express 2008.這些表似乎已創建好,數據看起來沒問題。select語句中的「字符串數據,右截斷」警告
我有一個連接到這個數據庫的MFC應用程序。它很好地連接到訪問,但是當我連接到SQL Server時,我在選擇語句上出現以下錯誤。
DBMS: Microsoft SQL Server
Version: 10.50.1600
ODBC Driver Manager Version: 03.80.0000
Warning: ODBC Success With Info on field 0.
String data, right truncation
State:01004,Native:0,Origin:[Microsoft][ODBC SQL Server Driver]
返回的數據應該是8個字符,但只有7個最右側的字符被截斷。
訪問前端可以正確讀取SQL Server中的數據。
在SQL Server表中的字段被定義爲nvarchar的與8
閱讀領域中的代碼長度看起來像
CDatabase Database;
CString sSerialNumber = "00000000";
CString SqlString;
CString sDsn = "Driver={SQL Server};Server=server\\db;Database=Boards;Uid=uid;Pwd=pwd;Trusted_Connection=False";
Database.Open(NULL,false,false,sDsn);
CRecordset recset(&Database);
SqlString.Format("Select SerialNumber from boards where MACAddress = '%s'",mac);
recset.Open(CRecordset::forwardOnly,SqlString,CRecordset::readOnly);
recset.GetFieldValue("SerialNumber",sSerialNumber);
在此之後,sSerialNumber應該是12345678,但其1234567
感謝您的幫助
我們可以推測在數據庫中,SerialNumber被存儲爲底層數據庫中的12345678嗎? – BIBD 2010-08-19 21:27:27
什麼是賞金?讓它在沒有新驅動的情況下工作?爲什麼有人想要這樣做? – 2010-08-23 19:48:37