Ошибка «Неверный синтаксис рядом с ключевым словом« CONVERT »» - PullRequest
0 голосов
/ 07 декабря 2018

У меня есть приведенный ниже оператор T SQL, но я получаю сообщение об ошибке

Неверный синтаксис рядом с ключевым словом 'CONVERT'

Куда я иду не так?

DECLARE @NSQL2 NVARCHAR(MAX)
DECLARE @SOURCETABLE NVARCHAR(MAX)

SELECT TOP 1 @SOURCETABLE = TABLE_NAME 
FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_NAME LIKE 'IN_PRODUCT________________%' 
  AND TABLE_TYPE = 'BASE TABLE'

SET @NSQL2 = 'UPDATE [' + @SOURCETABLE + '] SET OnSale = '''+ CONVERT(nvarchar(MAX),OnSale, 112)+'''

EXEC SP_EXECUTESQL @NSQL2

Ответы [ 3 ]

0 голосов
/ 07 декабря 2018

Вы намеревались, чтобы оператор Convert был частью вашей строки как литерала?

SET @NSQL2 = 'UPDATE [' + @SOURCETABLE + '] SET OnSale = CONVERT(nvarchar(MAX),OnSale, 112)'
0 голосов
/ 07 декабря 2018

Я получил его на работу, используя ниже:

SET @NSQL = 'UPDATE [' + @SOURCETABLE + '] SET OnSale =  CONVERT(nvarchar,CAST(OnSale AS DATETIME), 120)'
0 голосов
/ 07 декабря 2018

Попробуйте это:

    SET @NSQL2 = 'UPDATE ' + QUOTENAME(@SOURCETABLE) 
                 + ' SET OnSale = CONVERT(nvarchar(10),OnSale, 112)'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...