/// <summary>
/// 批量写入数据库
/// </summary>
/// <param name="urlInfo">Url类</param>
public void InsertDataSet(List<UrlInfo> urlInfos)
{
OracleConnection myConn = new OracleConnection(connStr);
if (myConn.State != ConnectionState.Open)
{
myConn.Open();
}
OracleDataAdapter adapter = new OracleDataAdapter();
adapter.SelectCommand = new OracleCommand("select visitid,mobile,url,startTime,endTime,desIp,desPort,agentIp,agentPort,mobileIp,mobilePort,urlTypeId,comeFrom from cn_visit where 1=0", myConn);
adapter.InsertCommand = new OracleCommand(@"INSERT INTO cn_visit(visitid,mobile,url,startTime,endTime,desIp,desPort,agentIp,agentPort,mobileIp,mobilePort,urlTypeId,comeFrom)
VALUES(seq_cn_visitid.Nextval,:mobile,:url,:startTime,:endTime,:desIp,:desPort,:agentIp,:agentPort,:mobileIp,:mobilePort,:urlTypeId,:comeFrom)", myConn);
adapter.InsertCommand.Parameters.Add(":mobile", OracleType.VarChar, , "mobile");
adapter.InsertCommand.Parameters.Add(":url", OracleType.VarChar, , "url");
adapter.InsertCommand.Parameters.Add(":startTime", OracleType.Number, , "startTime");
adapter.InsertCommand.Parameters.Add(":endTime", OracleType.Number, , "endTime");
adapter.InsertCommand.Parameters.Add(":desIp", OracleType.VarChar, , "desIp");
adapter.InsertCommand.Parameters.Add(":desPort", OracleType.Number,, "desPort");
adapter.InsertCommand.Parameters.Add(":mobileIp", OracleType.VarChar, , "mobileIp");
adapter.InsertCommand.Parameters.Add(":mobilePort", OracleType.Number, , "mobilePort");
adapter.InsertCommand.Parameters.Add(":agentIp", OracleType.VarChar, , "agentIp");
adapter.InsertCommand.Parameters.Add(":agentPort", OracleType.Number, , "agentPort");
adapter.InsertCommand.Parameters.Add(":urlTypeId", OracleType.Number, , "urlTypeId");
adapter.InsertCommand.Parameters.Add(":comefrom", OracleType.Number, , "comeFrom"); adapter.InsertCommand.UpdatedRowSource = UpdateRowSource.None;
adapter.UpdateBatchSize = ; DataSet dataSet = new DataSet(); try
{ adapter.Fill(dataSet); for (int i = ; i < urlInfos.Count; i++)
{
DataRow dr = dataSet.Tables[].NewRow();
dr["mobile"] = urlInfos[i].Mobile;
dr["startTime"] = urlInfos[i].StartTime;
dr["endTime"] = urlInfos[i].EndTime;
dr["url"] = urlInfos[i].Url;
dr["desIp"] = urlInfos[i].DesIp;
dr["desPort"] = urlInfos[i].DesPort;
dr["mobileIp"] = urlInfos[i].MobileIp;
dr["mobilePort"] = urlInfos[i].MobilePort;
dr["agentIp"] = urlInfos[i].AgentIp;
dr["agentPort"] = urlInfos[i].AgentPort;
dr["urlTypeId"] = urlInfos[i].UrlTypeId;
dr["comeFrom"] = urlInfos[i].ComeFrom; dataSet.Tables[].Rows.Add(dr);
}
adapter.Update(dataSet.Tables[]);
}
catch (Exception e)
{
log.Info("写入数据库失败,原因是:" + e.ToString());
}
if (myConn.State == ConnectionState.Open)
{
myConn.Close();
} }

最新文章

  1. 7.iOS Notification
  2. 浅谈Oracle事务【转载竹沥半夏】
  3. [SI]source insight使用
  4. 【BZOJ-1576】安全路径Travel Dijkstra + 并查集
  5. sql语句对数据库表进行加锁和解锁
  6. Codeforces Gym 100203I I - I WIN 网络流最大流
  7. ios 可变参数(va_list,va_start,va_end)
  8. HBase 4、Phoenix安装和Squirrel安装
  9. 我们的空间是它圆——基于Poicare对宇宙的模型
  10. Shell脚本的基本流程控制
  11. shell编程--基本格式,基本语法,运算符,expr,(()),$[]
  12. react 生命周期函数介绍
  13. text-decoration:[ text-decoration-line ] || [ text-decoration-style ] || [ text-decoration-color ] 默认值:
  14. Ettercap 实施中间人攻击
  15. Django+Xadmin打造在线教育系统(四)
  16. solo
  17. git默认忽略文件的大小写
  18. 网络营销相关缩写名称CPM CPT CPC CPA CPS SEM SEO解析
  19. 18. 进livebos对象直接跳转jsp页面的做法
  20. luogu P4199 万径人踪灭

热门文章

  1. 【转】IntelliJ IDEA 创建 hello world Java web Maven项目
  2. 【转】【Centos】centos 安装libtorrent/rtorrent
  3. Spring JMS 官方文档学习
  4. Java如何打印异常的堆栈?
  5. Swing用户界面开发工具包开发记录
  6. googletest进行单元测试(使用cmake编译)
  7. 针对程序集 &#39;SqlServerTime&#39; 的 ALTER ASSEMBLY 失败,因为程序集 &#39;SqlServerTime&#39; 未获授权(PERMISSION_SET = EXTERNAL_ACCESS)
  8. svn -- 数据备份,版本回退,版本冲突,多仓库配置
  9. C# listview控件右击导出数据到txt文本
  10. java线程安全问题之静态变量、实例变量、局部变量