看我写的这个触发器

deninghe 2007-08-09 04:29:22
刚用这玩意 
大家看看效率上行不
CREATE TRIGGER ctrl_hl_embox ON dbo.hl_embox
FOR INSERT
AS
declare @uid int
while (select count(id) from hl_embox) >10
begin
select @uid = [uid] from inserted
delete from hl_embox where id = (select min(id) from hl_embox where uid=@uid)
if (select count(id) from hl_embox) <=10
break
else
continue
end
...全文
138 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
deninghe 2007-08-09
  • 打赏
  • 举报
回复
有道理 谢谢指教
select count(id) from hl_embox 这是忘写条件了
应该是select count(id) from hl_embox where uid = @uid

谢谢了
ayzwd 2007-08-09
  • 打赏
  • 举报
回复
浪费,把那个IF判断给去了,本来查询一次数据库就行了,因为WHILE那儿已经判断了一次了,当不是大于10的时候就会自己停掉了,再加这个IF就是多余了,纯粹是增加服务器的负担,多查询了一次。

还有一个问题就是,如果新插入的记录里的UID在表里没有这些数据,那记录数就会一直大于10,就成了死循环了。

还有就是在统计的时间,你用的count(id)会起什么作用,count(id)和count(*)有区别嘛?难道这个表里总共只会有10条数据?
deninghe 2007-08-09
  • 打赏
  • 举报
回复
楼下的 别跑!
留下点什么吧
deninghe 2007-08-09
  • 打赏
  • 举报
回复
汗 别光接分啊
kk19840210 2007-08-09
  • 打赏
  • 举报
回复
接分
关于正交解码,我先解释何为正交解码,,,,其实名字挺高大上的,,,,还是先说编码器吧 看一下我用过的一种编码器 编码器的 线 数 ,是说编码器转一圈输出多少个脉冲,,,如果一个编码器是500线,,,说明这个编码器转一圈对应的信号线会输出500个脉冲,,,,为什么说是对应的,,,对于上面的编码器而言是这样的,,,,但是有的编码器里面有好多线,,,有的信号线是转一圈就输出对应多少线的脉冲,,,有的信号线是转一圈就输出一个脉冲,,,,这就要看编码器的资料了...... 看我上面用过的这个编码器,,使用A,B,VCC,GND这四根线,, 编码器转一圈A信号线会输出500个脉冲,,,,B信号线也会输出500个脉冲,,不过 正转的时候 反转的时候 正转的时候信号线A先输出信号,B信号线后输出 反转的时候信号线B先输出信号,A信号线后输出 假设只是单纯的测正转脉冲或者单纯的测反转脉冲,那么只需要用单片机随意选择一个信号线就行了,,然后就是脉冲计数,,,, 如果说要是一个电机既有正转又有反转,,,,我想知道这个电机绝对正转了多少圈 那么就需要用正转的圈数减去反转的圈数了,,,,,,那么问题来了,,,怎么测正转圈数和反转圈数 其实传统的做法 关于D触发器,,,,当clk引脚来一个上升沿,D引脚是什么电平,,那么Q就输出什么电平,,Q非,,与Q相反 现在如果说电机正转 可以看到每当B来上升沿的时候,A信号总为高电平,,,所以Q会输出高电平 设置A为上升沿进入其,,,中断函数 然后判断一下Q是否为高电平,如果为高电平正转变量自加一 如果电机反转 可以看到每当B来上升沿的时候,A信号总为低电平,,,所以Q会输出低电平 设置B为上升沿进入其,,,中断函数 然后判断一下Q是否为低电平,如果为低电平反转变量自加一 然后 正转变量减去反转变量就能得到电机到底正转了多少圈......这样就会得到一个相对的变量,,这个变量呢,就是单片机正交解码的值 说白了单片机的正交解码功能就是得到一个正反转,,,相对的变量,,,,这个变量呢,,你正转的时候他会加,你反转的时候他会减, 不过呢,,,,STM32的这个变量有点坑,,,是太坑了,,,他内部定义的这个变量的类型是无符号整形,,,也就是说0---65535,,,,,,,,,,,,, 如果直接利用STM32的正交解码功能,,直接读这个值,,这样呢就会出现很麻烦的问题,,,,

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧