开发过程中常常需要用到批量导入一批数据的问题,当然不可能通过后台代码循环这些数据集,然后一条一条的往数据库里插入,这样太不可取了。
一般针对这样的批量导入数据,我可以将这些数据集拼接成XML字符串的方式然后传到数据库,通过解析XML的方式批量插入到表中。
sql语句可以这样写
create table Student ( ID int identity(1,1), userName varchar(100), age smallint, city varchar(100) ) declare @hdoc int declare @SaveStr varchar(1000) set @SaveStr = '<?xml version="1.0" encoding="gbk"?><root> <item userName="张三" age="24" city="北京"></item> <item userName="李四" age="22" city="上海"></item> <item userName="王五" age="26" city="深圳"></item> </root>' exec sp_xml_preparedocument @hdoc output,@SaveStr; insert into Student select * from openxml(@hdoc,'root/item') with Student
这样就可以很方便的导入一批数据到数据库表中了,OK