如何把文本文件导入SQL数据库里面的一个表?比如文本文件格式如下
学妹的数据文件有四列,而数据库表mm只有两列,前面两列相互对应。
所以,下面2个方法你可以尝试一下: 1、如果是SYBASE数据库,可以使用BCP之类的工具导入(数据文件后面两列可以先使用编辑器去除,否则会合并在author列,超过列定义宽度的被截掉)。如果是其它类型数据库,可能也会有类似工具导入。
也可以使用第三方工具导入,比如PB中的Import功能(不必处理数据文件)。 2、使用SQL语句,你说过已经编程循环读取了文件的前两列信息,可以使用INSERT语句插入即可。
3、至于你提供的是ODBC驱动的错误提示:可能是由于超时所致。由于本人对ASP不甚了了,所以建议你在插入数据时,尽量逐条提交,提高事务的执行效率,也许会避免你所说的错误。
或者可能需要使用ASP处理连接超时的问题! 希望我的回答对你有所帮助!。
MYSQL如何导出文本文件MYSQL如何导出文本文件
1。
mysql> use dbname Database Changed mysql> select * from driver into outfile 'a。txt'; 2。
C:\>mysqldump buybook > d:/mysqlbak/buybook。sql 或者 C:\>mysqldump buybook > d:/mysqlbak/buybook。
txt 建议用2上面的导出的文本包括了数据库的结构和记录! 如只要纪录的话: select * into outfile 'filename。txt' from tablname; 另:使用mysqldump命令格式mysqldump YourDatabaseName --user=YourUserName --password=YourPasswordYourDatabaseName是你想处理的数据库名YourUserName和YourPassword 对应你的授权口令如果只需要导出表的结构,那么可以使用mysqldump的 -d 选项转:用图形工具是比较方便的,比如我用的:SQLyog。
在命令行中的方式为: 1、把整个数据库导出为一个sql文件:用:mysqldump dbname > c:\mydb。sql 2、把sql文件导入数据库:用mysql命令进入mysql,在mysql>提示符下输入: 1)创建数据库:create database newdb; 2)使用当前数据库:use newdb; 3)导入sql文件中的数据:source c:\mydb。
sql(无分号) 这样,就把mydb。sql中的数据导入到新的数据库newdb了。
怎么从SQL数据库数据导出word
在SQL数据库的很多应用场景中,需要将SQL中的某个数据库或查询的结果导出到EXCEL中,因为Excel更容易对数据处理和方便用户邮箱传输。本次经验归纳了SQL数据表导出到EXCEL中的三种方法:
1、复制粘贴,将SQL查询语句按指定条件导出数据;——适合小量数据。
2、导出完整的SQL数据表为Excel文件;——适合大量数据。
3、定时自动导出指定SQL数据表为Excel文件;——适合大量数据。
其它:DTS数据转换服务导入导出向导或者DTS设计器创建DTS包;
导出excel文件之后,再复制到word当中:
步骤一、先进入Excel表格,然后选中需要导入到Word文档中的区域,按下 Ctrl+C 复制;
步骤二、打开Word,然后选择菜单栏的“编辑”中的“选择性粘贴”,在“形式”下面选中“Microsoft Office Excel 工作表 对象”然后确定;
此时,就已经把编辑好的Excel表格导入到Word中了,有的人这时肯定会说,这还不是和Word中表格没什么却别啊!确实,就这样用肉眼看,根本就看不错这个表格和Word中做的表格有什么不一样之处;
区别肯定是有的,不信你双击表格看看,会是什么效果,没错把,导入的表格和Excel中的表格一模一样,当然,这个表格也可以自由拖动它的长和宽,还可以运用Excel中的公式呢!
关于SQL中插入WORD文档的问题
用image类型
方法:
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)
insert 表名 values(2,0x)
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' 不是内部或外部命令,也不是可运行的程序或批处理文件。
如果报'textcopy' 不是内部或外部命令,也不是可运行的程序或批处理文件
的话,你就到
C:\Program Files\Microsoft SQL Server\MSSQL\Binn
目录下拷备 textcopy.exe到:
C:\Program Files\Microsoft SQL Server\80\Tools\Binn
我的在SQl2000下实验成功。
将word文档导入excel,最好可以直接导入到SQLSERVER
SQL Server允许您以多种方式导入Word文档。让我们看看几种最常用的方法。请注意,在将文档导入至SQLServer之前,您需要创建一个image数据类型列,用于存放数据。然后,您可以使用textcopy.exe命令行工具将image文件读入数据库,从而完成文档的导入操作。如果需要该工具的基本说明文档,请在命令提示状态下键入textcopy/?。将Word文档导入SQL Server的另一个方法是使用Microsoft ActiveX Directory Object(ADO)Stream接口编写导入代码。您可以在Microsoft产品支持服务(PSS)的通过使用ADO Stream对象访问和修改SQL Server BLOB数据一文中找到示例代码。
此外,您也可以将二进制数据移到SQL Server中。有关这一方法的详细说明,请参阅PSS的使用ADO检索和更新SQLServer文本域一文。移动二进制数据允许您将数据的一部分存放在数据库中,这在需要控制数据格式时尤其有用。例如,如果只需要数据中1,000到1,010之间的字节,导入二进制数据的速度远远高于使用ADO Stream接口的速度,这是由于SQL Server从磁盘上检索数据的量大为减少。人们通常使用这一技术来存储位掩码,用于表示应用程序的开或关标志位。
SQL Server 2000自带了说明了如何移动二进制数据的示例代码。如需查看该代码,只需在安装有SQL Server 2000光盘上代码示例的驱动器上选择 \Program Files\Microsoft SQL Server\80\Tools\DevTools\Samples\ado路径。展开该可执行文件,在Visual Basic目录下查找Samples子目录。在Employee示例下,注意一下该代码是如何使用FillDataFields()函数的。
如需索引Word文档,SQL Server 7.0和SQL Server 2000都提供了全文搜索组件。该组件混合使用了多种技术,用以索引大型文本和image列。在执行全文搜索时,您需要指定image列所含的文件类型,以及从二进制数据中析取信息所需的筛选(filter)。有关使用全文索引的详细信息,请参阅SQL Server在线书籍中的相关主题,并阅读David Jones 2000年7月发表在SQL server杂志网站上的名为构建更好的搜索引擎一文。请注意,索引Word文档并不会自动生成包含文档中关键字的一组关系表。但是,索引文件让您将这些Word文档包含在您的搜索中。以下是从数据中析取关键字的可行方式:
使用OLE自动处理从文档中读取用户定义的关键字。在装载该文档时将这些关键字保存在关系表中。
使用OLE自动处理打开文档并将其保存为文本(.txt)格式。为了析取重要的词语,您可以使用自己的“词语分析器”遍历该文本文件。文字分析器查看文档中的每个词语,去除一些无用文字,并将每个唯一的词语与其出现的次数一道存储起来。
数据库读取word文档内容
1. 可以通过流将图片或word转化为二进制数据,然后存入,选择使用一种动态语言即可轻松完成.
但是,由于此类文件较大,数据读取和写入都将非常缓慢,所以不提倡这样.
建议使用图片和文档的路径保存在数据库中.
2. 用StreamReader读取一个doc文件,转成byte[],写入数据库的image类型字段
读出来的时候一样,把流写成doc文件就行了
3. SQL Server 2000 可以使用 image 类型,最大可存储 2^31-1 个字节 即 2GB。
或者使用 binary 和 varbinary 类型,最大可存储 8,000 个字节。
未来的SQL Server版本将删除 image 类型,所以 SQL Server 2005 推荐使用 varbinary(max) 类型,最大可存储 2GB。
如何将word里的数据导入sql sever 2005中
如果Word需要共享SQL Server 2000以及其他数据库中的数据,就需要使用“数据连接向导”。这里只能简单介绍一下。
在Word“数据库”工具栏中单击“插入数据库”按钮,在打开的“数据库”对话框,单击“获取数据”,在打开对话框中,单击“新建源”按钮打开“数据连接向导”。
选择“Microsoft SQL Server”选项,单击“下一步”按钮打开对话框。输入服务器的名称,登录凭据,再单击“下一步”,选中要插入数据的表,单击“下一步”按钮继续,在打开对话框中列出即将建立的数据连接文件的名称,单击“完成”按钮。
转载请注明出处51数据库 » sql导入word文件