'textcopy' 不是内部或外部命令,也不是可运行的程序或批处理文件 的问题!

DiligencyMan 2008-10-06 02:12:36

我的环境是sql2000数据库,为了将二进制数据转换成图片,就做了一个小测试用的存储过程如下:
SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON
GO





ALTER PROCEDURE aap_textcopy (
@srvname varchar (30),
@login varchar (30),
@password varchar (30),
@dbname varchar (30),
@tbname varchar (30),
@photoname varchar (30),
@filename varchar (30),
@whereclause varchar (40),
@direction char(1))
AS
DECLARE @exec_str varchar (255)
SELECT @exec_str =
'textcopy /S ' + @srvname +
' /U ' + @login +
' /P ' + @password +
' /D ' + @dbname +
' /T ' + @tbname +
' /C ' + @photoname +
' /W " ' + @whereclause +
'" /F ' + @filename +
' / ' + @direction
print @exec_str

EXEC master..xp_cmdshell @exec_str




GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO


--执行存储过程的时候
exec aap_textcopy 'WS-SH-L0285', 'sa', 'sa', '88547', 'photo','photo', 'd:\21.jpg ', 'where id=1', 'O'; --注意条件是 id=1



为什么报如下错误呢:
'textcopy' 不是内部或外部命令,也不是可运行的程序或批处理文件。



baidu,google的时候,有人这样解决:
如果报textcopy不是可执行文件的话,你就到
C:\Program Files\Microsoft SQL Server\MSSQL\Binn
目录下拷备 textcopy.exe到:
C:\Program Files\Microsoft SQL Server\80\Tools\Binn

但是我去找的话,发现这2个文件夹下都有textcopy.exe这个文件啊!


大家还有别的方法解决不?在线等,这个问题比较着急啊!

...全文
467 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
DiligencyMan 2008-10-06
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 roy_88 的回复:]
HTML code方法:
1、建立过程
CREATE PROCEDURE sp_textcopy (
@srvname varchar (30),
@login varchar (30),
@password varchar (30),
@dbname varchar (30),
@tbname varchar (30),
@colname varchar (30),
@filename varchar (30),
@whereclause varchar (40),
@direction char(1))
AS
DECLARE @exec_str varchar (255)
SELECT @exec_str =

[/Quote]

问题已经解决了,这位兄弟回答问题时候也不仔细看看我的帖子!你说的那个我已经自己检查过啦!
zjcxc 2008-10-06
  • 打赏
  • 举报
回复
这个记得好像是 sql 7.0 的一个示例程序中的东西
中国风 2008-10-06
  • 打赏
  • 举报
回复
方法:
1、建立过程
CREATE PROCEDURE sp_textcopy (
@srvname varchar (30),
@login varchar (30),
@password varchar (30),
@dbname varchar (30),
@tbname varchar (30),
@colname varchar (30),
@filename varchar (30),
@whereclause varchar (40),
@direction char(1))
AS
DECLARE @exec_str varchar (255)
SELECT @exec_str =
'textcopy /S ' + @srvname +
' /U ' + @login +
' /P ' + @password +
' /D ' + @dbname +
' /T ' + @tbname +
' /C ' + @colname +
' /W "' + @whereclause +
'" /F ' + @filename +
' /' + @direction
EXEC master..xp_cmdshell @exec_str

2、建表和初始化数据
create table 表名 (编号 int,image列名 image)
go
insert 表名 values(1,0x) -- 必须的,且不是null
insert 表名 values(2,0x) -- 必须的,且不是null
go

3、读入
sp_textcopy '你的服务器名','sa','你的密码','库名','表名','image列名','c:\图片.bmp','where 编号=1','I' --注意条件是 编号=1

sp_textcopy '你的服务器名','sa','你的密码','库名','表名','image列名','c:\bb.doc','where 编号=2','I' --注意条件是 编号=2

go

4、读出成文件
sp_textcopy '你的服务器名','sa','你的密码','库名','表名','image列名','c:\图片.bmp','where 编号=1','O' --注意条件是 编号=1

sp_textcopy '你的服务器名','sa','你的密码','库名','表名','image列名','c:\bb.doc','where 编号=2','O' --注意条件是 编号=2
go

************如果报textcopy不是可执行文件的话,你就到
C:\Program Files\Microsoft SQL Server\MSSQL\Binn
目录下拷备 textcopy.exe到:
C:\Program Files\Microsoft SQL Server\80\Tools\Binn



要拷貝
oraclelogan 2008-10-06
  • 打赏
  • 举报
回复
在系统环境变量里面 设置 path="C:\Program Files\Microsoft SQL Server\80\Tools\Binn"

然后重启电脑,再跑下试下看吧!
hyde100 2008-10-06
  • 打赏
  • 举报
回复
友情帮顶,关注。
zheninchangjiang 2008-10-06
  • 打赏
  • 举报
回复
path="C:\Program Files\Microsoft SQL Server\80\Tools\Binn"
youjianbo_han_87 2008-10-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zheninchangjiang 的回复:]
path="C:\Program  Files\Microsoft  SQL  Server\80\Tools\Binn"

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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