注册 登录
编程论坛 SQL Server论坛

批量处理数据与单挑数据处理如何区分

dwmax 发布于 2010-09-14 14:34, 856 次点击
我现在要写个触发器,包含insert,update,delete 三种,每新增、删除、修改一条记录的同时记录一下日志保存到一张日志表中,但是用到触发器的这张表有可能会出现批量处理数据的情况,这样我的触发器记录的日志就出现很多无用的记录,现在我想知道:
在数据库中,当我对表里的数据做新增、删除、修改时,应该怎么判断我所做的操作:是属于批量处理还是单条处理?

请各位大虾赐教!!!

7 回复
#2
qingshuiliu2010-09-14 16:57
"出现批量处理数据的情况,这样我的触发器记录的日志就出现很多无用的记录"
这里无用的记录是写什么东西?批量处理数据,是如何批量处理的?
#3
dwmax2010-09-14 17:04
批量数据处理 就是 批量修改 批量删除 和批量新增
至于记录嘛就是对表数据进行增删改操作的具体做了些什么,例如 修改操作,记录的就是修改了那些字段内容,修改时间,谁修改的等等信息
无用的记录 就是当我做批量操作时,如果触发器没有禁用,那么就会往记录表中写很多数据,但是这些数据我不需要 所以称之为无用的记录
#4
qingshuiliu2010-09-14 17:15
“我现在要写个触发器,包含insert,update,delete 三种,每新增、删除、修改一条记录的同时记录一下日志保存到一张日志表中”
那你写触发器做什么用?
触发器,不管是否为批处理,对于每一个操作都会执行相应的操作的。
#5
cnfarer2010-09-14 21:40
也许你得换个思路。(别以为“批处理”就是将一大块数据直接塞到数据库中)
#6
dwmax2010-09-15 09:03
请各位大虾指点小弟一下  该如何处理?谢谢各位了!
#7
dearwolf41282010-09-15 11:52
你可以设置两个时间变量,在如果上次和这次的插入的时间小于某个值,就不要让它写到日志里面了,如果是批量处理数据,两个时间间隔是很小的,有的连一毫秒都没有,自己根据情况来判断吧
#8
dwmax2010-09-15 14:01
标记
1