Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Переменные sql в powershell  [new]
smotritel89
Member

Откуда:
Сообщений: 54
Всем привет!

как правильно записать запрос с переменной в powershell

например:

sqlcmd -v VAR="6" -q "SELECT TOP 1000 [ID] ,[parent] FROM [demo].[dbo].[accountMirror] where id = N'$(VAR)'"


выдает:

VAR : The term 'VAR' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was 
included, verify that the path is correct and try again.
At C:\file.ps1:1 char:106
+ ... where id = N'$(VAR)'"
+                    ~~~~~~
    + CategoryInfo          : ObjectNotFound: (DBNAME:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException


но если выполнить:

sqlcmd -v VAR="6" -i C:\file.sql


в файле тот же запрос. то все ОК.

Как правильно записать, подскажите плз?
31 июл 14, 18:50    [16383580]     Ответить | Цитировать Сообщить модератору
 Re: Переменные sql в powershell  [new]
virtuOS
Member

Откуда: большая деревня
Сообщений: 265
sqlcmd -v VAR="6" -q "SELECT TOP 1000 [ID] ,[parent] FROM [demo].[dbo].[accountMirror] where id = `$(VAR)"
1 авг 14, 09:14    [16385421]     Ответить | Цитировать Сообщить модератору
 Re: Переменные sql в powershell  [new]
smotritel89
Member

Откуда:
Сообщений: 54
virtuOS
sqlcmd -v VAR="6" -q "SELECT TOP 1000 [ID] ,[parent] FROM [demo].[dbo].[accountMirror] where id = `$(VAR)"


спасибо, помогло.

тока при выполнении вообще любого запроса висит sqlcmd пока не нажмешь Ctrl+C..

как можно принудительно terminate после выполнения запроса?
1 авг 14, 10:06    [16385622]     Ответить | Цитировать Сообщить модератору
 Re: Переменные sql в powershell  [new]
smotritel89
Member

Откуда:
Сообщений: 54
т.е если быть точным мне нужно вот так:

$query = sqlcmd -v VAR="6" -q "SELECT TOP 1000 [ID] ,[parent] FROM [demo].[dbo].[accountMirror] where id = `$(VAR)"

write-output $query


но пока выполняется запрос, переменной query не присваивается значение..
1 авг 14, 10:16    [16385665]     Ответить | Цитировать Сообщить модератору
 Re: Переменные sql в powershell  [new]
Glory
Member

Откуда:
Сообщений: 104760
smotritel89
тока при выполнении вообще любого запроса висит sqlcmd пока не нажмешь Ctrl+C..

как можно принудительно terminate после выполнения запроса?

Прочитайте чтоли про параметры запуска sqlcmd
например, чем -q отличается от -Q
1 авг 14, 11:19    [16385991]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить