110,529
社区成员
发帖
与我相关
我的任务
分享
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[insertTabletest]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[insertTabletest]
GO
CREATE TABLE [dbo].[insertTabletest] (
[e_id] [int] NULL ,
[e_name] [varchar] (12) COLLATE Japanese_CI_AS NULL ,
[e_sex] [char] (2) COLLATE Japanese_CI_AS NULL ,
[e_age] [smallint] NULL ,
[e_school] [varchar] (50) COLLATE Japanese_CI_AS NULL ,
[e_education] [varchar] (10) COLLATE Japanese_CI_AS NULL ,
[e_major] [varchar] (30) COLLATE Japanese_CI_AS NULL ,
[e_studyExp] [datetime] NULL ,
[e_workExp] [text] COLLATE Japanese_CI_AS NULL ,
[e_skill] [text] COLLATE Japanese_CI_AS NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
DateTime begin=DateTime.Now;
using(SqlConnection conn=new SqlConnection(connectionString))
{
conn.Open();
SqlDataAdapter sd=new SqlDataAdapter();
sd.SelectCommand=new SqlCommand("select * from insertTabletest",conn);
sd.InsertCommand=new SqlCommand("insert into insertTabletest"
+ "values(@e_id,@e_name,@e_sex,@e_age,@e_schook,@e_education,@e_major,@e_studyexp,@e_workExp,@e_skill);",conn);
sd.InsertCommand.Parameters.Add("@e_id",SqlDbType.Int);
sd.InsertCommand.Parameters.Add("@e_name",SqlDbType.NChar,12);
sd.InsertCommand.Parameters.Add("@e_sex",SqlDbType.Char,2);
sd.InsertCommand.Parameters.Add("@e_age",SqlDbType.SmallInt);
sd.InsertCommand.Parameters.Add("@e_schook",SqlDbType.NChar,10);
sd.InsertCommand.Parameters.Add("@e_education",SqlDbType.NChar,10);
sd.InsertCommand.Parameters.Add("@e_major",SqlDbType.NChar,10);
sd.InsertCommand.Parameters.Add("@e_studyexp",SqlDbType.DateTime);
sd.InsertCommand.Parameters.Add("@e_workExp",SqlDbType.Text);
sd.InsertCommand.Parameters.Add("@e_skill",SqlDbType.Text);
sd.InsertCommand.UpdatedRowSource=UpdateRowSource.None;
DataSet dataset=new DataSet();
sd.Fill(dataset);
for(int i=0;i<100000;i++)
{
object[] row={i,"国内外贩","ma",1,"国内外贩事业部","系统架构","性能分析",DateTime.Now,"xxxxxxxxxxxxxx","yyyyyyyyyyyyyy"};
dataset.Tables[0].Rows.Add(row);
if(i%500==0)
{
sd.Update(dataset.Tables[0]);//出错
dataset.Tables[0].Clear();
}
}
sd.Update(dataset.Tables[0]);
dataset.Tables[0].Clear();
sd.Dispose();
dataset.Dispose();
conn.Close();
}
TimeSpan ts = DateTime.Now - begin;
MessageBox.Show("ts = " + ts.TotalMilliseconds);