Как объявить и назначить переменную в одной строке в SQL

Мне нужно что-то вроде

DECLARE myVariable nvarchar[MAX] = "hello world".

Бонусные баллы, если вы покажете мне, как закодировать цитату в строке.

например:.

Я хочу, чтобы строка читала

John said to Emily "Hey there Emily"

моя попытка была бы

DECLARE myVariable nvarchar[MAX] = "John said to Emily \"Hey there Emily\""

Ответ 1

Здесь:

DECLARE @var nvarchar(max) = 'Man' best friend';

Вы заметите, что ' скрывается, удваивая его до ''.

Так как разделитель строк ', а не ", нет необходимости бежать ":

DECLARE @var nvarchar(max) = '"My Name is Luca" is a great song';

Второй пример на странице MSDN на DECLARE показывает правильный синтаксис.

Ответ 2

на sql 2008 это действительно

DECLARE @myVariable nvarchar(Max) = 'John said to Emily "Hey there Emily"'
select @myVariable

на SQL Server 2005, вам нужно сделать это

DECLARE @myVariable nvarchar(Max) 
select @myVariable = 'John said to Emily "Hey there Emily"'
select @myVariable

Ответ 3

Вы почти получили его:

DECLARE @myVariable nvarchar(max) = 'hello world';

Смотрите здесь для документов

Для кавычек SQL Server использует апострофы, а не кавычки:

DECLARE @myVariable nvarchar(max) = 'John said to Emily "Hey there Emily"';

Используйте двойные апострофы, если они вам нужны в строке:

DECLARE @myVariable nvarchar(max) = 'John said to Emily ''Hey there Emily''';