社区
C#
帖子详情
请教插入一条记录同时更新另一张表
NeverSmile
2004-10-25 11:35:14
如题,怎么保证他们要么都成功,要么都失败;
另外,如何知道更新数据库影响记录的数量?
...全文
184
7
打赏
收藏
请教插入一条记录同时更新另一张表
如题,怎么保证他们要么都成功,要么都失败; 另外,如何知道更新数据库影响记录的数量?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
alwaysinsist
2004-10-25
打赏
举报
回复
用触发器,这个方便。
NeverSmile
2004-10-25
打赏
举报
回复
解决了,谢谢各位,分太少(本想给100的...纯属以外),大家别嫌弃
Eddie005
2004-10-25
打赏
举报
回复
上面给出的例子就是一个事务处理;
至于执行一条更新受影响的记录数 int tmp = tmpCmm.ExecuteNonQuery();就可以了
hebookboy
2004-10-25
打赏
举报
回复
在事务中进行处理
Eddie005
2004-10-25
打赏
举报
回复
/// <summary>
/// 执行多个SQL语句
/// </summary>
/// <param name="sqlArray">动态数组:需要执行的多个SQL语句</param>
public static bool RunMultiSQL(System.Collections.ArrayList sqlArray)
{
if(sqlArray.Count < 1) return true;
bool success = false;
SqlConnection tmpConn = Common.MySettings.MyConn;
SqlCommand tmpCmm = new SqlCommand();
tmpCmm.Connection = tmpConn;
tmpConn.Open();
SqlTransaction tmpTrans = tmpConn.BeginTransaction();
tmpCmm.Transaction = tmpTrans;
try
{
for(int i=0;i<sqlArray.Count;i++)
{
tmpCmm.CommandText = sqlArray[i].ToString();
tmpCmm.ExecuteNonQuery();
}
tmpTrans.Commit();
success = true;
Common.ShowMsg("保存成功!");
}
catch(System.Exception ex)
{
tmpTrans.Rollback();
Common.ShowMsg("保存失败!");
Common.ShowMsg(ex.ToString());
}
finally
{
tmpTrans.Dispose();
tmpConn.Close();
}
return success;
}
brightheroes
2004-10-25
打赏
举报
回复
怎么保证他们要么都成功,要么都失败
--用事务来处理,失败一起RollBack
如何知道更新数据库影响记录的数量?
--ExecuteNonQuery()
xdev
2004-10-25
打赏
举报
回复
在同一个事务中完成, 这组操作
sqlite一次
插入
多条
记录
的优化方法
sqlite一次
插入
多条
记录
的优化方法 96 浪尖儿 2016.08.17 17:50* 字数 579 阅读 1397评论 0喜欢 3 Date: 2014-08-09 Summary: 有大量的数据要
插入
数据库,但是每次只写入
一条
在速度上很难接受。本文介绍了在sqlite...
mysql
一张
表
100亿条数据_一个
表
有100亿条
记录
,如何优化
我们预计数据量将会很大,一年的时间里,
一张
表
,就会产生100亿条数据,
表
结构,如下id,userid,createddate,等等正常情况下,100亿条
记录
如果都存在一个
表
里,那么如果通过userid来查寻一定很慢。所以,
请教
各位在...
merge
更新
或
插入
同
一张
表
一段业务逻辑,需要先判断
一条
记录
在数据库中是否有存在,若存在则
更新
该
记录
,若不存在则
插入
记录
。 应用之前的做法是: 1、先用条件判断
记录
在数据库中的个数。 2.1、若count(*)>0,则执行UPDATE操作。 2.2、...
Oracle根据时间将
一条
记录
进行分割成多条(开始时间与结束时间跨几天就分割成几条)...
假如我们A
表
里面有
一条
记录
是这样的: 三个字段,第一个为MDN(号码),第二个为STARTTIME(开始时间),第三个为ENDTIME(结束时间) 现需要对
表
中所有这种开始时间与结束时间不在同一天的
记录
进行拆分,时间跨度几天...
Oracle根据时间将
一条
记录
进行分割成多条(开始时间与结束时间跨几天就分割成几条)
假如我们A
表
里面有
一条
记录
是这样的: 三个字段,第一个为MDN(号码),第二个为STARTTIME(开始时间),第三个为ENDTIME(结束时间) 现需要对
表
中所有这种开始时间与结束时间不在同一天的
记录
进行拆分,时间跨度几天就...
C#
110,571
社区成员
642,565
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章