
比如你要单击按钮1在name插入 123,就这么写:
句柄=连接MySQL(“MySQL地址”,“MySQL账号”,“MySQL密码”,“数据库名,你的就是account”,MySQL端口,一般都是3306)
增加记录(句柄,“account”,“name=‘123’”)
如果要同时增加name和password这两个或更多,就按下面的写:
增加记录(句柄,“account”,“name=‘123’”+“,”+“password='123'”)
/// <summary>/// 执行多条SQL语句,实现数据库事务。
/// </summary>mysql数据库
/// <param name="SQLStringList">多条SQL语句</param>
public static void ExecuteSqlTran(List<string>SQLStringList)
{
using (MySqlConnection conn = new MySqlConnection(MySqlHelper.ConnStr))
{
conn.Open()
MySqlCommand cmd = new MySqlCommand()
cmd.Connection = conn
MySqlTransaction tx = conn.BeginTransaction()
cmd.Transaction = tx
try
{
for (int n = 0n <SQLStringList.Countn++)
{
string strsql = SQLStringList[n].ToString()
if (strsql.Trim().Length >1)
{
cmd.CommandText = strsql
cmd.ExecuteNonQuery()
}
//后来加上的每500条语句重启一次事务,插入数据
if (n >0 &&(n % 500 == 0 || n == SQLStringList.Count - 1))
{
tx.Commit()
tx = conn.BeginTransaction()
}
}
//tx.Commit()//原来一次性提交
}
catch (System.Data.SqlClient.SqlException E)
{
tx.Rollback()
throw new Exception(E.Message)
}
}
}
你可以在执行完insert语句后,马上执行select LAST_INSERT_ID()这个函数就可以获取到"刚增记录的自增主键值"了。给你个示例:
http://www.javaeye.com/topic/393951
如果你是用jdbc的,可以利用其API,参考代码如下:
Connection conn = DriverManager.getConnection(连接参数)
Statement stmt = conn.executeUpdate(insert sql)
ResultSet genKeys = stmt.getGeneratedKeys()
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)