C#使用DataTable传递数据减少数据库访问打开关闭次数
来源:互联网 发布:ubuntu apache2 编辑:程序博客网 时间:2024/04/20 12:57
public class mx_case_photo
{
private string db_url;
public mx_case_photo(string db_url)
{
this.db_url = db_url;
}
public mx_case_photo()
{
}
public int AddTable(DataTable dt)
{
int result=0;
using (MySqlConnection conn = new MySqlConnection(db_url))
{
conn.Open();
using (MySqlTransaction tran=conn.BeginTransaction())
{
try
{
for (int i = 0; i < dt.Columns.Count; i++)
{
StringBuilder sb = new StringBuilder();
sb.Append("INSERT INTO mxzu.mx_case_photo (city_id,case_id,title,photo,size,views,orderby,closed,clientip,dateline)");
sb.Append(" values(@city_id,@case_id,@title,@photo,@size,@views,@orderby,@closed,@closed,@clientip,@dateline)");
MySqlParameter[] sp ={
new MySqlParameter("@city_id",MySqlDbType.Int32),
new MySqlParameter("@case_id",MySqlDbType.Int32),
new MySqlParameter("@title",MySqlDbType.VarChar,50),
new MySqlParameter("@photo",MySqlDbType.Int32,225),
new MySqlParameter("@varchar",MySqlDbType.VarChar,50),
new MySqlParameter("@views",MySqlDbType.Int32),
new MySqlParameter("@orderby",MySqlDbType.Int32),
new MySqlParameter("@closed",MySqlDbType.Int32),
new MySqlParameter("@clientip",MySqlDbType.VarChar,50),
new MySqlParameter("@dateline",MySqlDbType.Int32)
};
sp[0].Value = dt.Columns[i]["city_id"];
sp[1].Value = dt.Columns[i]["case_id"];
sp[2].Value = dt.Columns[i]["title"];
sp[3].Value = dt.Columns[i]["photo"];
sp[4].Value = dt.Columns[i]["size"];
sp[5].Value = dt.Columns[i]["views"];
sp[6].Value = dt.Columns[i]["orderby"];
sp[7].Value = dt.Columns[i]["clientip"];
sp[8].Value = dt.Columns[i]["dateline"];
MySqlCommand comm = new MySqlCommand(sb.ToString(), conn);
comm.Parameters.AddRange(sp);
comm.Transaction = tran;
result = result + comm.ExecuteNonQuery();
}
tran.Commit();
}
catch (MySqlException e)
{
tran.Rollback();
throw e;
}
finally
{
conn.Close();
}
}
}
return result;
}
}
{
private string db_url;
public mx_case_photo(string db_url)
{
this.db_url = db_url;
}
public mx_case_photo()
{
}
public int AddTable(DataTable dt)
{
int result=0;
using (MySqlConnection conn = new MySqlConnection(db_url))
{
conn.Open();
using (MySqlTransaction tran=conn.BeginTransaction())
{
try
{
for (int i = 0; i < dt.Columns.Count; i++)
{
StringBuilder sb = new StringBuilder();
sb.Append("INSERT INTO mxzu.mx_case_photo (city_id,case_id,title,photo,size,views,orderby,closed,clientip,dateline)");
sb.Append(" values(@city_id,@case_id,@title,@photo,@size,@views,@orderby,@closed,@closed,@clientip,@dateline)");
MySqlParameter[] sp ={
new MySqlParameter("@city_id",MySqlDbType.Int32),
new MySqlParameter("@case_id",MySqlDbType.Int32),
new MySqlParameter("@title",MySqlDbType.VarChar,50),
new MySqlParameter("@photo",MySqlDbType.Int32,225),
new MySqlParameter("@varchar",MySqlDbType.VarChar,50),
new MySqlParameter("@views",MySqlDbType.Int32),
new MySqlParameter("@orderby",MySqlDbType.Int32),
new MySqlParameter("@closed",MySqlDbType.Int32),
new MySqlParameter("@clientip",MySqlDbType.VarChar,50),
new MySqlParameter("@dateline",MySqlDbType.Int32)
};
sp[0].Value = dt.Columns[i]["city_id"];
sp[1].Value = dt.Columns[i]["case_id"];
sp[2].Value = dt.Columns[i]["title"];
sp[3].Value = dt.Columns[i]["photo"];
sp[4].Value = dt.Columns[i]["size"];
sp[5].Value = dt.Columns[i]["views"];
sp[6].Value = dt.Columns[i]["orderby"];
sp[7].Value = dt.Columns[i]["clientip"];
sp[8].Value = dt.Columns[i]["dateline"];
MySqlCommand comm = new MySqlCommand(sb.ToString(), conn);
comm.Parameters.AddRange(sp);
comm.Transaction = tran;
result = result + comm.ExecuteNonQuery();
}
tran.Commit();
}
catch (MySqlException e)
{
tran.Rollback();
throw e;
}
finally
{
conn.Close();
}
}
}
return result;
}
}
0 0
- C#使用DataTable传递数据减少数据库访问打开关闭次数
- Oracle 减少数据库访问次数
- C# 使用DataTable组织数据库数据
- C# 中 使用Connection 打开/关闭数据库
- 将数据取到内存,减少对数据库的访问次数,加快速度
- 数据库性能提升之减少访问数据库次数
- 数据库提升性能 要减少访问数据库次数
- 数据库性能提升之减少访问数据库次数
- eclipse 关闭自动加载(重启),使用jreloader更新代码,减少重启次数。
- 如何减少对数据库的访问次数来加快sql执行
- C#访问数据库 SQL传递变量
- 打开和关闭窗口以及窗口间的数据传递
- Asp.Net使用DataTable查询数据库数据
- c#中的connection类的使用-数据库的关闭与打开
- 如何减少访问磁盘的次数,减少访问磁盘的次数
- memache减少数据库的更新次数
- C# 使用LINQ访问数据库
- c# 将datatable数据批量添加到数据库
- Zigzag conversion 的c++实现
- 以无线方式安装企业内部应用-兼容iOS9
- Cookie session
- c++ exception:构造 析构 异常处理
- ios 国际化(项目名和内容)
- C#使用DataTable传递数据减少数据库访问打开关闭次数
- mysql 日期类型字段相关运算
- leetcode | ZigZag Conversion
- java.lang.RuntimeException: Unable to instantiate activity ComponentInfo异常解决
- android MVVM DataBinding
- Android5.X
- Android Studio开发NDK
- 佳博打印机GP-Printer TEXT 命令无效的问题
- Android ListView控件的学习