可以通过批量导入BULK INSERT命令实现你的问题,请参考下面的文章。
http://msdn.microsoft.com/zh-cn/library/ms190919.aspx
http://msdn.microsoft.com/zh-cn/library/ms190919.aspx
写了一点例子代码,如下:
[code]
if object_id('t_bulkinsert','U') is not null
drop table t_bulkinsert;
go
create table t_bulkinsert
(
id int not null primary key,
name varchar(10),
[desc] varchar(3000)
)
go
BULK INSERT t_bulkinsert
FROM 'C:\t_bulkinsert.txt'
WITH (
DATAFILETYPE='char',
FIELDTERMINATOR='|'
);
[/code]
文本文件'C:\t_bulkinsert.txt' 中的内容:
[code]
1|A|AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2|B|BBBBBBBBBBBBBBBBBBBBBBBBBBBBB
3|C|CCCCCCCCCCCCCCCCCCCCCCCCCCCCC
[/code]
最好文本文件名有一定规则,这样你就可以写一个存储过程在Sql server的job中每天定时处理了。
如果有重复数据,你可以先将文本文件中的数据导入到一个临时表中,然后再过滤掉重复的,导入到正式表中。
玉开
|
大侠五级
|园豆:8822
|
2008-05-28 11:14