SQL Server:查询导出到文件

时间:2015-03-20 09:42:55

标签: sql sql-server-2014

我正在尝试学习sql编程的基础知识,我正在使用SQL Server 2014.我已设法使用以下命令将文件导入表中:

BULK INSERT Db.dbo.Co2_table
FROM 'd:\dataset_co2.txt'
with 
(  
   FIRSTROW =2,  
   ROWTERMINATOR ='\n' 
)
GO

我想进行双重操作,即将表的内容导出到文件。我试过了:

SELECT * 
INTO OUTFILE 'C:\datadump\sqldbdump.txt"
FROM dbo.alarms_2_2014
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';


bcp Db.dbo.Co2_table out "C:\users\ws5.en-cre\desktop\prova.txt" -T –c


sqlcmd -S . -d Db -E -s, -W -Q "SELECT * FROM dbo.Co2_table" > ExcelTest.csv

但这些似乎都不起作用(我收到错误消息)。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

我怀疑您正在从Management Studio运行这些命令。您应该使用console来执行此命令。这对我有用。还要检查您是否对该文件夹有权限。

bcp "select * from Db.dbo.Co2_table" queryout C:\users\ws5.en-cre\desktop\prova.txt  -c -T

bcp Db.dbo.Co2_table out C:\users\ws5.en-cre\desktop\prova.txt  -c -T

您在c参数-T –c中也有可疑符号。它不是常规短划线-

答案 1 :(得分:0)

感谢您的回答和建议,并为我的精确度和我的迟到回复道歉(在这种情况下,我错过了来自stackoverflow的通知)。

关于我是否使用mstudio或控制台的问题,我所做的是点击mstudio中的“新查询”,编写代码并按下执行。所以我猜答案是我使用的是mstudio。

如果我尝试:

bcp "select * from Db.dbo.Co2_table" queryout 
C:\users\ws5.en-cre\desktop\prova.txt -c –T

它说

Msg 102, Level 15, State 1, Line 1 Incorrect syntax near 'queryout'.

我想在这种情况下,其中一个问题是缺少引号,但即使添加它们也无法解决问题。

我正在寻找可以作为脚本实现的解决方案。我熟悉excel vba宏,我想实现类似的东西。

谢谢,

亚历