62,046
社区成员
发帖
与我相关
我的任务
分享
//设置一个数据库的连接串
string connectStr = "User Id=scott;Password=tiger;Data Source=";
OracleConnection conn = new OracleConnection(connectStr);
OracleCommand command = new OracleCommand();
command.Connection = conn;
//这个参数需要指定每次批插入的记录数
command.ArrayBindCount = recc;
command.CommandText = "insert into dept values(:uid, :uname, :ubirthday)";
conn.Open();
int[] uid = new int[recc];
string[] uname = new string[recc];
DateTime[] ubirthday = new DateTime[recc];
OracleParameter deptUid = new OracleParameter("uid", OracleDbType.int32, uid, ParameterDirection.Input);
OracleParameter deptUname = new OracleParameter("uname", OracleDbType.Varchar2, uname, ParameterDirection.Input);
OracleParameter deptUbirthday = new OracleParameter("ubirthday", OracleDbType.Date, ubirthday, ParameterDirection.Input);
comm.Parameters.Add(deptUid);
comm.Parameters.Add(deptUname);
comm.Parameters.Add(deptUbirthday);
//计时器
Stopwatch sw = new Stopwatch();
sw.Start();
for (int i = 0; i < recc; i++)
{
uid[i] = i;
uname[i] = i.ToString();
ubirthday[i] = 空时间(null)这里要如何设置导入到Oracle数据库中使日期型的为空值,我用Convert.ToDateTime(null)在数据库中显示的是最原始的时间,我想要让它显示空,请知道的朋友帮帮忙 ,谢谢
}
command.ExecuteNonQuery();
sw.Stop();
System.Diagnostics.Debug.WriteLine("批量插入:" + recc.ToString() + "所占时间:" +sw.ElapsedMilliseconds.ToString());