0
我有表TBL( SomeName爲nvarchar(64) )OLEDB比較問題nvarchar的反對NTEXT(SQLServer的2005)
在OLEDB我想選擇 SELECT 1 FROM Tbl1 WHERE SomeName = ?
結合3的Unicode字符作爲參數原因:DB_E_ERRORSINCOMMAND(0x80040E14L)「爲nvarchar的數據類型和ntext是在等於操作者不兼容的」
我已經嘗試以下輸入綁定:
1) ...
currentBind.wType = DBTYPE_VARIANT;
currentBind.cbMaxLen = 20
// where data points to valid VT_BSTR allocated by SysAllocString
...
2) ...
currentBind.wType = DBTYPE_WSTR;
currentBind.cbMaxLen = 20
// where data points to valid VT_BSTR allocated by SysAllocString
...
以任何方式SQLServer將此參數作爲ntext處理。 有什麼建議嗎?先謝謝你。
是的,它有幫助。 SQL Profiler正好顯示我的?作爲ntext處理(參見@ p2波紋管): declare @ p1 int set @ p1 = 21 exec sp_prepexec @ p1輸出,N'@ P1 bigint,@ P2 ntext,@ P3 bigint',N' – Dewfy 2009-08-05 17:05:31