把txt文本数据导入sql2000数据库中,如何实现

把txt文本数据导入sql2000数据库中,如何实现,第1张

txt同样是可以导入到Sql

Server2000数据库的

但是

前提是你的txt文件内容是有特定的格式

比如

你要的信息字段内容必须用特定的符号隔开(默认是逗号)

a,b,c

e,f,g

如果这样的要求满足的话

然后你

打开sql

server2000

选择数据库——>导入数据

显示导入数据向导-》下一步

在选择数据源的时候

"数据源"选择“文本文件”->下一步

选择行分隔符->下一步

选择列分隔符。。。。。下一步。。。。完成

步骤:

1读取TXT文件内容。

2分析TXT文件内容记录特点。

3设计好SQL数据库字段。

4执行插入。

不知道楼主用什么语言,无法具体回答。不过如果楼主懂编程的话,根据这几点很容易搞定。

相信读取文件和插入 *** 作都不是难事吧。

使用sql的数据导入导出工具。

在sql中,在需要导入的数据库上点右键选择“任务”-“导入数据”,“下一步”,在数据源下下拉列表中选择“平面文件源”,点击文件名后面的“浏览”按钮,选择需要导入到txt文件,进行配置后“下一步”,在目的数据源中选择sql数据源,选择需要导入到表,进行字段对应关系即可进行导入了。或者先用excel打开txt文件,存成xls格式,在第一步选择时将“平面文件源”改成“Microsoft excel“也可。如果还有问题可以hi我。

1先生成个空的csv文件(不要只是把txt文件的后缀改为csv,这样容易导致异常)

2先把txt中各个项目的间隔符替换为刚才做成的csv文件的分隔符,再拷贝到做成的csv文件中

3做一个bat,执行sql文,把文件读到数据库中

或者用SQL

Server2005自带的导入功能

吧txt文件直接拷贝到excel中容易出现数据不一致的问题(比如说日期等)

下面我们通过以下的简单的SQL语句即可实现数据的批量导入,代码如下:

Bulk  insert  test

From  ‘C:\Users\Olive\Desktop\testtxt’

With

(   fieldterminator=’,’,

rowterminator=’\n’

)

备注:1) bulk insert 为Sql server 中一个批量插入的 *** 作

2)test 为上边定义的表,即我们的数据将要插入的表

3) ‘C:\Users\Olive\Desktop\testtxt’为数据源文件所在磁盘上的物理路径

4)with 相当于一些插入的附属条件,可以起这里添加一些约束限制条件等

5) fieldterminator=’,’字段的分割符为”,”一般的txt文本数据源的字段分隔都为逗号,当然也可以为其他,比如”|”

6) rowterminator=’\n’各条信息间的分割符为’\n’,一般的txt文本数据源的信息间的分割都是换行符,即一条信息占一行,也可以用其他格式如:”|\n”

原文链接:网页链接

txt同样是可以导入到sql

server2000数据库的

但是

前提是你的txt文件内容是有特定的格式

比如

你要的信息字段内容必须用特定的符号隔开(默认是逗号)

a,b,c

e,f,g

如果这样的要求满足的话

然后你

打开sql

server2000

选择数据库——>导入数据

显示导入数据向导-》下一步

在选择数据源的时候

"数据源"选择“文本文件”->下一步

选择行分隔符->下一步

选择列分隔符。。。。。下一步。。。。完成

使用场景:

比如将

C:\Test\

目录下的所有

txt文件内容

导入到

Table_1

--定义临时表,用于存放获取的文件名称

CREATE

TABLE

#files

(name

varchar(200)

NULL,

sql

varchar(7000)

NULL)

--获取文件名称,存放在#files

INSERT

#files(name)

exec

masterxp_cmdshell

'dir

c:\test

/b'

--删除不要的文件名称

DELETE

#files

WHERE

coalesce(name,

'')

NOT

LIKE

'Code%'

--插入需要

导入文件内容的

命令SQL,需要修改

Table_1(改为导入的Table)和文件路径

UPDATE

#files

SET

sql

=

'BULK

INSERT

Table_1

FROM

'''

+

'C:\Test\'+name

+

'''

WITH

('

+

'DATAFILETYPE

=

''char'',

FIELDTERMINATOR

=

''\t'',

'

+

'ROWTERMINATOR

=

''\n'')'

--开始执行导入

DECLARE

@sql

varchar(8000)

DECLARE

cur

CURSOR

STATIC

LOCAL

FOR

SELECT

sql

FROM

#files

OPEN

cur

WHILE

1

=

1

BEGIN

FETCH

cur

INTO

@sql

IF

@@fetch_status

<>

0

BREAK

EXEC(@sql)

END

DEALLOCATE

cur

主要分为读取文件夹下所有文件和导入文件内容两部分

--读取文件夹下所有文件

declare

@files

table

(ID

int

IDENTITY,

FileName

varchar(100))

insert

into

@files

execute

xp_cmdshell

'dir

c:\test

/b'

select

'c:\'+

[FileName]

AS

FILEPATH

INTO

#temp

from

@files

SELECT

FROM

#temp

--导入文件内容

BULK

INSERT

dboTable_1

FROM

#temp

WITH

(

ROWTERMINATOR

='\n'

)

还需要开启

/

Step

1

开启

xp_cmdshell

Use

Master

GO

EXEC

masterdbosp_configure

'show

advanced

options',

1

RECONFIGURE

WITH

OVERRIDE

GO

EXEC

masterdbosp_configure

'xp_cmdshell',

1

RECONFIGURE

WITH

OVERRIDE

GO

/

参考:

>

以上就是关于把txt文本数据导入sql2000数据库中,如何实现全部的内容,包括:把txt文本数据导入sql2000数据库中,如何实现、怎样将txt格式的文件导入到数据库中、怎么将.txt文件导入到sql数据库中啊!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9835478.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存