帮忙找个错,是关于存储过程的

smilegw 2003-12-30 02:54:49
创建存储过程如下:
create procedure up_gw
@sqlselect varchar(1000),
@server varchar(20),
@path varchar(20),
@user varchar(10),
@pass varchar(10)
as
declare @sql varchar(1000)
set @sql = 'bcp @sqlselect queryout @path -c -t, -S@server -U@user -P@pass'
EXEC master..xp_cmdshell @sql
GO
执行命令如下:
exec up_datedown 'SELECT * FROM ylbx..ts_zzry
WHERE ylbx..ts_zzry.dwbh =001','tf-server','c:\temp\text.txt','sa','sa'

然后提示错误:
SQLState = 08001, NativeError = 17
Error = [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或访问被拒绝
SQLState = 01000, NativeError = 53
Warning = [Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()).
NULL


高手指点
...全文
25 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
wzh1215 2003-12-30
  • 打赏
  • 举报
回复
又是动态执行:试试下面的
create procedure up_gw
@sqlselect varchar(1000),
@server varchar(20),
@path varchar(20),
@user varchar(10),
@pass varchar(10)
as
declare @sql varchar(1000)
set @sql = 'bcp @sqlselect queryout @path -c -t, -S @server -U @user -P @pass'
set @sql='EXEC master..xp_cmdshell '+@sql
exec sp_executesql @sql
,N'@sqlselect varchar(1000),@path varchar(20),@server varchar(20),@user varchar(10),@pass varchar(10)',@sqlselect,@path,@server,@user
GO

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧