Выполнение следующего скрипта через sqlcmd завершается с ошибкой. Однако выполнение его через ssmo или SQL Server Management Studio работает.Использование двойных кавычек в сценарии T-SQL не выполняется в SQLCMD, но не SSMO
sqlcmd -S . -d test -i input.sql
input.sql:
CREATE FUNCTION test()
RETURNS @t TABLE ("ID" INT)
AS
BEGIN
RETURN
END
Даже когда я поставил SQL Server Management Studio в Sqlcmd режиме, он до сих пор не удается. Это проблема, поскольку мы тестируем наши скрипты с помощью SSMS, но развертываем с помощью SQLCMD. Таким образом, мы обнаруживаем, что наш код не работает при попытке развертывания.
Почему sqlcmd ведет себя так? Есть ли способ отключить его?
Почему вы включаете имя поля с кавычками? Если вы хотите деактивировать идентификатор, используйте [ID]. – Lazarus