免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3048 | 回复: 0
打印 上一主题 下一主题

如何获得Word文件的内容 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-08-11 18:48 |只看该作者 |倒序浏览
以下是我创建的对文件检索的脚本,Word查询已经成功
但是我想取出匹配字段所在段落的内容,不知道这么解决,请各位大虾帮帮忙
例如:word文档test.doc内容为

你好,测试,test
如果有人解决了这个问题
在信息中包括你个人资料中的签名. 只限注册用户使用. 当有人回复你的主题时你将收到邮件通知,限注册用户使用.

查询“解决”我希望获得结果是如果有人解决了这个问题
或者是解决的前20和后20个字


脚本如下:
exec sp_fulltext_database \'enable\'
go

create table  dali (ID int not null primary key,MyImage image,FileType char(4),FileNmae varchar(255))
go

exec sp_fulltext_catalog \'My_FullDir\', \'create\',\'D:\\Tools\\Oracle\'
go

EXEC sp_fulltext_catalog \'My_FullDir\', \'start_full\'
go


declare @Key sysname ;
select @Key=c.name from syscolumns a,sysconstraints b,sysobjects c where a.id=object_id(\'dali\') and a.name=\'ID\' and a.id=b.id and b.constid=c.id and c.name like \'PK%\'
exec sp_fulltext_table \'dali\',\'create\',\'My_FullDir\',@Key  ----这两句是为全文索引,对表进行标记
go

sp_fulltext_column \'dali\',\'MyImage\',\'add\',0x0804,\'FileType\'
go

EXEC sp_fulltext_table \'dali\',\'activate\'
GO

IF ( EXISTS ( SELECT * FROM sysobjects WHERE name = \'sp_textcopy\' ) )
BEGIN
  DROP PROCEDURE sp_textcopy
END
go

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
/* 这是使用textcopy工具将文件插入到数据库中,如果有前台工具可以用前台开发工具将文件插入,这里为了演示 */
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
go

insert dali values(1,0x,\'.doc\',\'test\')
go

sp_textcopy \'kavin\',\'sa\',\'\',\'CommTrade\',\'dali\',\'MyImage\',\'D:\\Tools\\Oracle\\test.doc\',\'where ID=1\',\'I\'
go

insert dali values(2,0x,\'.bmp\',\'test\')
go

sp_textcopy \'kavin\',\'sa\',\'\',\'CommTrade\',\'dali\',\'MyImage\',\'D:\\Tools\\Oracle\\test.bmp\',\'where ID=2\',\'I\'
go

insert dali values(3,0x,\'.pdf\',\'test\')
go

sp_textcopy \'kavin\',\'sa\',\'\',\'CommTrade\',\'dali\',\'MyImage\',\'D:\\Tools\\Oracle\\test.pdf\',\'where ID=3\',\'I\'
go

insert dali values(4,0x,\'.htm\',\'test\')
go

sp_textcopy \'kavin\',\'sa\',\'\',\'CommTrade\',\'dali\',\'MyImage\',\'D:\\Tools\\Oracle\\test.html\',\'where ID=4\',\'I\'
go

insert dali values(5,0x,\'.txt\',\'AQ\')
go

sp_textcopy \'kavin\',\'sa\',\'\',\'CommTrade\',\'dali\',\'MyImage\',\'D:\\Tools\\Oracle\\AQ.txt\',\'where ID=5\',\'I\'
go

select * from dali where contains(MyImage,\'解决\')
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP