------- Windows Phone 7手机开发、 .Net培训、期待与您交流! -------
SqlBulkCopy(); 批量数据的插入;它允许你快速将大型文件批量复制到SQL Server表中
首先可以看到的是他实现了IDisposable接口!所以他需要释放using
首先就是要 new 一个SqlBulkCopy(); 如 using(SqlBulkCopy Copy=new SqlBulkCopy(SQL))
当然SqlBulkCopy()里面是要传参数的,所以要给他一个连接数据库的字符串 当然前面肯定要先写好!
什么打开文件什么的就不写了 直接写SqlBulkCopy()的用法
DataTable Table=new DataTable ();//这个是必须要的 传进去的是个表
Table.Columns.Add("Number");//创建列并取名为Number
Table.Columns.Add("Name");//创建列并取名为Name
DateTime Time = DateTime.Now;//计算时间
foreach (string row in FileName) //循环打开的文件内容写入到 row里面
{
string[] SP = row.Split('\t');//分割符号来分割里面带空格的 在写入到string 数组中
string NUmber = (string)SP[0]; // Number 来获取到第一个数组值
string Name = SP[1]; //Name来获取到第二个数组值
DataRow Row=Table.NewRow();//创建一个Datarow对象
Row["Number"] = NUmber;//一定要在表中创建Table.Columns 否则会报错
Row["Name"] = Name;
Table.Rows.Add(Row);
}
using( SqlBulkCopy Copy = new SqlBulkCopy(连接数据库的字符串));//进行资源释放
{
Copy.DestinationTableName = "T_Numbers";//考入T_Numbers这个表里面
Copy.ColumnMappings.Add("Name", "Name");//数据库里对应的字段
Copy.ColumnMappings.Add("Number", "Number");
Copy.WriteToServer(Table);//写入表中
}
TimeSpan Span = DateTime.Now - Time;//时间的算法
MessageBox.Show("共花了" + Span.ToString() + "久");
------- Windows Phone 7手机开发、.Net培训、期待与您交流! -------