sqlcmd

Karen__84
Дата: 19.06.2011 08:45:01
Добрый день всем.Хочу сделать запрос из командноцй страки и результат записать в файл query.txt.Я пишу так

sqlcmd -S Servername -E
use databaseName

select * from Persons -o C:\query.txt
go
Гавриленко Сергей Алексеевич
Дата: 19.06.2011 10:00:29
"Я пишу так", и что происходит?
Гавриленко Сергей Алексеевич
Дата: 19.06.2011 10:05:14
Писать надо так: sqlcmd -E -Q"select @@version" -o"C:\qryout.txt"

Если текст запроса длинный, его тоже можно в файл запихать.
Karen__84
Дата: 19.06.2011 18:25:59
я пишу так

sqlcmd -S erevan-6de9b9e5 -E
-Q "select * from Countries" -o C:\Karen1.txt
go
Msg 102, Level 15, State 1, Server EREVAN-6DE9B9E5, Line 2
Incorrect syntax near '-'.
Anatoly Podgoretsky
Дата: 19.06.2011 18:35:16
Попробуй [EREVAN-6DE9B9E5]
Гавриленко Сергей Алексеевич
Дата: 19.06.2011 18:46:38
Karen__84
я пишу так

sqlcmd -S erevan-6de9b9e5 -E
-Q "select * from Countries" -o C:\Karen1.txt
go
Msg 102, Level 15, State 1, Server EREVAN-6DE9B9E5, Line 2
Incorrect syntax near '-'.
sqlcmd надо не в студии писать, а в командной строке.
iap
Дата: 19.06.2011 18:51:38
И вот это
erevan-6de9b9e5
надо бы в двойные кавычки взять из-за символа "-"
Вроде у SQLCMD нет параметра "-6"?
Karen__84
Дата: 19.06.2011 19:13:57
C:\Documents and Settings\Karen>hostname
erevan-6de9b9e5



C:\Documents and Settings\Karen>sqlcmd -S "erevan-6de9b9e5" -E
1> use MyDataBase
2> -Q "select * from Countries" -o C:\Kare.txt
3> go
Msg 102, Level 15, State 1, Server EREVAN-6DE9B9E5, Line 2
Incorrect syntax near '-'.
iap
Дата: 19.06.2011 19:56:49
Karen__84
C:\Documents and Settings\Karen>hostname
erevan-6de9b9e5



C:\Documents and Settings\Karen>sqlcmd -S "erevan-6de9b9e5" -E
1> use MyDataBase
2> -Q "select * from Countries" -o C:\Kare.txt
3> go
Msg 102, Level 15, State 1, Server EREVAN-6DE9B9E5, Line 2
Incorrect syntax near '-'.
Что такое "use MyDataBase"?
Это часть запроса? Тогда почему не в -Q?
Что такое "go"? CMD.EXE понимает эти две буквы? Или у Вас ещё и Go.EXE в конце выполняется?
Почему -Q оказалась на новой строке?
Вам надо изучать командную строку Windows. Вот что!
NVS
Дата: 07.12.2011 12:44:47
Привет всем!
Чтобы не плодить темы
SELECT @@Version

Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86) Feb 9 2007 22:47:07 Copyright (c) 1988-2005 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)

пишу следующее
sqlcmd -E -i "c\MyFolder\MyScript.sql" -o "C\MyFolder\MyOutput.txt"

файл MyScript.sql :
USE DB_OLAP
GO
SELECT * FROM dbo.USR4000012
GO


естественно и такая база и такая таблица в ней есть
получаю в ответ:
автор
Msg 911, Level 16, State 1, Server DBASET, Line 4
Could not locate entry in sysdatabases for database 'DB_OLAP'. No entry found with that name. Make sure that the name is entered correctly.
Msg 208, Level 16, State 1, Server DBASET, Line 1
Invalid object name 'dbo.USR4000012'.


Учетка в группе sysadmin.