| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 999 人关注过本帖
标题:请教
只看楼主 加入收藏
SCY007
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-4-21
收藏
 问题点数:0 回复次数:8 
请教
大家帮忙看看,
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

我执行的时候,第2步老是出错,请问下,中间的那些编号什么的该怎么写啊,有人能给个例子吗?谢了啊!
搜索更多相关主题的帖子: direction password 
2008-05-04 08:25
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
收藏
得分:0 
报什么错 问题尽量描叙详细点
2008-05-04 11:04
SCY007
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-4-21
收藏
得分:0 
回复 2# 的帖子
因为上网的机子不能做那个,所以没法截图发上来,就是说表名那附近语法错误!要么就是对象名无效
2008-05-05 09:36
makebest
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:658
专家分:962
注 册:2005-3-17
收藏
得分:0 
第二步的代码经过本人实践, 没有发现问题:
create table 表名 (编号 int,image列名 image)
go
insert 表名 values(1,0x)    -- 必须的,且不是null
insert 表名 values(2,0x)    -- 必须的,且不是null
go
2008-05-05 11:11
SCY007
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-4-21
收藏
得分:0 
回复 4# 的帖子
那你是怎么写的?可以发出来看下吗?我也不知道为什么,我去整就老出错,
2008-05-05 11:23
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
收藏
得分:0 
第二步肯定是没问题的,在网上搜索了下 有可能是下面的原因引起的错误:
1.如果报textcopy不是可执行文件的话,你就到
C:\Program Files\Microsoft SQL Server\MSSQL\Binn
目录下拷备 textcopy.exe到:
C:\Program Files\Microsoft SQL Server\80\Tools\Binn
------------------
1.搜索时出现错误:
  服务器: 消息 7619,级别 16,状态 1,行 2
  查询子句只包含被忽略的词

  这种情况修改 \Mssql\Ftdata\Sqlserver\Config 下对应语言的干扰词列表文件

2.修改了干扰词文件,查询中文时仍然出现上述问题
  a.首先检查你的SQL有没有安装最新的补丁,检查的方法是在查询分析器中运行:
    select @@version
    如果出来的版本号是8.00.760以下,则表明你未安装sp3的补丁,要装上.

    SQL补丁下载:
    http://www.

    注意下载后,执行的时候是解压,要在解压后的目录中执行setup.bat才是真正的安装

  b.配置全文索引时,单词断字符选择"中文(中国)"

  c.Noise.chs文件中至少有一个单词,例如:?

  d.如果在全文检索时,你能正常修改干扰词文件,说明你的全文检索没有使用上这个文件
    如果你配置的全文检索应该要用到这个文件,那就在
    企业管理器--展开你的数据库--右键全文目录--重建全部全文目录

3.表中的数据改变后,检索不到
  方法1. 右键你的表--全文索引表--启用增量填充
  方法2. 右键你的表--全文索引表--更改跟踪,这样以后的修改会自动填充(有一定延迟)

4.sql2000才支持对image列的全文检索
-------------------------------------------------------------------
你上面的textcopy和xp_cmdshell我也没有用过,你最好还是将详细的错误提示写出来,大家一起研究下
2008-05-06 09:43
SCY007
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-4-21
收藏
得分:0 
回复 6# 的帖子
create table AAA (0750 int,aaa image)
go
insert AAA values(1,0x)    -- 必须的,且不是null
insert AAA values(2,0x)    -- 必须的,且不是null
go
我是这样改的,执行后错误是:
服务器:消息 170,级别15,状态1,过程sp_textcopy,行25
第25行:'0750'附近语法错误.
服务器:消息 208,级别16,状态1,行1
对象名'AAA'无效.
服务器:消息 170,级别15,状态1,行3
第3行:'sp_textcopy'附近有语法错误.
2008-05-07 08:45
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
收藏
得分:0 
create table AAA (0750 int,aaa image)
改成
create table AAA ([0750] int,aaa image)

最好不要用数字或者SQL的保留字来作字段
2008-05-07 11:49
makebest
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:658
专家分:962
注 册:2005-3-17
收藏
得分:0 
直接用:create table 表名 (编号 int,image列名 image)
怎么把中间编号换成0750了啊
2008-05-13 10:44
快速回复:请教
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016735 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved