sql server 2005中新增了许多新的功能,其中OPENROWSET函数中的bulk功能, 可以批量将文件类型中的数据导入到数据库中去.根据MSDN的说法:
BULK 是 OPENROWSET 函数中指定的新的行集提供程序,它使您可以访问关系格式的文件数据。为了从文件中检索数据,您可以指定 BULK 选项、文件名以及用 bcp.exe 创建或手动创建的格式文件。您可以在从 OPENROWSET 中返回的表的别名后面的括号中,指定结果列的名称。下面举个例子简单说明
假如有一个TXT文件,如下
Asia.txt
1, Mizuho, Fukushima, Tokyo
2, Minika, Pang, Taipei
3, Jen, Ambelang, India
4, Jiang, Hong, Shangai
5, Ada, Koo, HongKong
而我们建立一个数据表,叫region
CREATE TABLE REGION
( ID INT,
REGION VARCHAR(25),
DATA VARCHAR(MAX)
)
我们就可以用bulk的功能,往region表添加数据了
INSERT INTO REGION (ID, REGION, DATA)
SELECT 1 AS ID, 'ASIA' AS REGION,
* FROM OPENROWSET( BULK 'C:DATAASIA.TXT',SINGLE_CLOB)
AS MYTABLE
其中,region表中的data字段,就是asia.txt文本文件里的内容了。
出处:jackyrong BLOG