我的SQL命令有什么问题?

时间:2010-07-05 05:48:54

标签: sql-server-2005

我正在尝试将查询结果放入PowerPoint文件中,如下所示

EXEC XP_CMDSHELL 'SQLCMD -Q "Select * From test_tbl" -O "E:test_tbl.ppt"'

但它不起作用。

以下是我的摘要

**output**

Sqlcmd: Warning: '-O' is an obsolete option and is ignored.
Msg 208, Level 16, State 1, Server SUMERU-49484E24, Line 1
Invalid object name 'TableName'.
NULL

在执行此查询之前,我已使用sp_configure启用了xp_cmds。

我也有.ppt文件在正确的位置。

我这样做只是为了我自己的实验。

请帮助我执行相同的操作。

使用SQL Server 2005。

编辑:

我更改了以下

的查询
EXEC XP_CMDSHELL 'SQLCMD -Q "Select * From test_tbl" -s "SUMERU-49484E24\SQLEXPRESS2008" -d "test" -E -o "D:t2.ppt"'

但下面是pptfile中的错误

HResult 0xFDC, Level 11, State 1
Cannot open database requested in login 'test'. Login fails.
HResult 0x4818, Level 14, State 1
Login failed for user 'NT AUTHORITY\SYSTEM'.
HResult 0x4, Level 16, State 1
Shared Memory Provider: I/O Error detected in read/write operation [4]. 
Sqlcmd: Error: Microsoft SQL Native Client : Communication link failure.

由于

1 个答案:

答案 0 :(得分:2)

我看到一些问题:

  • sqlcmd定义输出文件的参数是-o(小写) - 而不是您正在使用的-O(大写)

  • 您没有定义要连接的服务器和数据库 - 您需要将-S (servername)-d (database name)添加到SQLCMD命令行

  • 您没有定义如何以安全方式连接 - 为可信连接提供-E(集成Windows安全性)或使用-U (login)和{{1}定义用户和密码}