2013-08-30 2 views
-1

У меня есть таблица в базе данных, содержащая инструкции запроса в столбцах. Мне нужно обновить это. Есть ли способ, что я могу обновить это кажется, дает мне ошибку:Обновить столбец в таблице с запросом (текст)

UPDATE Items 
SET Query = 'SELECT isnull((sum(OrigDocAmt)),0) amount from AP where Acct in (1234) and Status='O' and Doc in ('CK') {SLLocCode}' 
WHERE ID='111' 

Это дает мне ошибку, потому что он считает, «O» в виде отдельной строки. Есть ли способ, которым я могу это сделать, как в python «What is up». Не знаете, почему это было настроено таким образом, но это было сделано моим предшественником. Пожалуйста помоги.

ответ

2

Вы должны использовать 2 одиночные кавычки («») вокруг каждого буквального значения

'SELECT isnull((sum(OrigDocAmt)),0) amount from AP where Acct in (1234) and Status=''O'' and Doc in (''CK'') {SLLocCode}' 
0

Вам нужно бежать одинарные кавычки в строке запроса. В SQL Server, вы просто удваивать одинарные кавычки:

UPDATE Items 
    SET Query = 'SELECT isnull((sum(OrigDocAmt)),0) amount from AP where Acct in (1234) and Status=''O'' and Doc in (''CK'') {SLLocCode}' 
    WHERE ID = '111'; 
0

вы должны бежать ' (одиночные кавычки) в запросе. Это можно сделать, просто удвоив его.

UPDATE Items 
SET Query = 'SELECT isnull((sum(OrigDocAmt)),0) amount 
from AP where Acct in (1234) and Status=''O'' and Doc in (''CK'') {SLLocCode}'' 
WHERE ID=''111'; 
Смежные вопросы