Как я могу изменить тип данных столбца и затем выполнить действия с этим новым типом в том же сценарии в SQL Server? - PullRequest
0 голосов
/ 31 июля 2009

У меня есть скрипт с оператором Alter Column, который меняет тип данных с Bigint на Varchar. Сразу после этого мне нужно позвонить Substring() по этому столбцу.

К сожалению, проверка синтаксиса SQL Server не позволяет мне сделать это. Мне нужно добавить оператор 'GO', чтобы разделить команды. Проблема в том, что мне также нужно включить в мой скрипт IF -условия, а добавление оператора GO нарушит блок IF, так что он больше не существует в той же области и нарушит логику моего кода .

Есть ли способ сделать это:

Alter Table MyTable
Alter Column MyColumn varchar(25)

GO

Update MyTable
Set MyColumn = Substring(MyColumn, 0, 5)

Без использования слова GO?

1 Ответ

2 голосов
/ 31 июля 2009

Как это:

Alter Table MyTable
Alter Column MyColumn varchar(25)

EXEC('Update MyTable
Set MyColumn = Substring(MyColumn, 0, 5)');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...