Я пытаюсь использовать следующий SQL-запрос для извлечения некоторой финансовой информации из базы данных Dynamics NAV в веб-аппликацию на основе PHP.SQL-запрос терпит неудачу при использовании подсказки таблицы в PHP
SELECT SUM([SUM$Amount]) AS total
FROM [Company Name$G_L Entry$VSIFT$1] WITH(NOEXPAND)
WHERE [Posting Date]>='2014-01-01' AND
[Posting Date]<='2014-11-26' AND
[G_L Account No_]='3020'
Запрос отлично работает, когда используется непосредственно в SQL Server Management Studio, но терпит неудачу, когда я использую его в веб-приложении, хотя PHP PDO. Я получаю следующее сообщение об ошибке:
Array (
[0] => HY000
[1] => 1934
[2] => General SQL Server error: Check messages from the SQL Server [1934] (severity 16) [SELECT SUM([SUM$Amount]) AS total FROM [Company Name$VSIFT$1] WITH(NOEXPAND) WHERE [Posting Date]>='2014-01-01' AND [Posting Date]<='2014-11-26' AND [G_L Account No_]='3020']
[3] => -1
[4] => 16
)
Я не нашел дополнительной информации об ошибках в журналах сервера.
Проблема с «WITH (NOEXPAND)» - частью запроса. Если я удалю это, запрос запускается также при вызове с PHP. Но затем запрос становится намного медленнее, так как он не использует индексированное представление в таблице.
Кто-нибудь знает, в чем проблема здесь?
видел это? -> http://stackoverflow.com/questions/16054217/mssql-error-1934-occurs-on-insert-to-table-with-computed-column-php-pdo –
Спасибо Марко! Это решило проблему. Большое спасибо. –