。問題在於將PHP數字值轉換爲在MS SQL Server的函數中使用。我用下面的語句刪除某些記錄:PHP PDO接口,我有使用PHP PDO接口與Microsoft SQL Server的麻煩MS SQL Server的
$sql = "DELETE FROM table WHERE SUBSTRING(attribute, 1, ?) = ?";
我準備和執行的代碼這一說法(稍微收縮):
$query = $pdo->prepare ($sql);
$query->execute (array (strlen ('Text'), 'Text'));
但查詢總是失敗。錯誤是:
SQLSTATE [42000]:[Microsoft] [SQL Server Native Client 11.0] [SQL Server]參數數據類型nvarchar對於子字符串函數的參數3無效。
我假設從strlen的數量不解析爲一個號碼,但我不知道如何解決這一問題(除了手動添加到查詢)。
我發現這些鏈接,但是不是非常有幫助。
上的Drupalhttp://drupal.org/node/1169202
的人有同樣的錯誤,但他們用石膏重建功能固定它。有沒有其他方法可以解決這個問題?
謝謝。
可悲的是這並沒有解決問題。它響應此錯誤:[Microsoft] [SQL Server Native Client 11.0] COUNT字段不正確或語法錯誤。無論哪種方式,我更喜歡解決方案,我不必重寫太多的代碼。 – Legoless