判断一张表是否有数据,如果有,马上进行处理,怎么做才好?

cherish58 2014-11-20 04:10:16
我现在有一张空表,如果表里有新数据就马上用.net程序进行处理,数据是不固定的,可能1天有1次新据,也可能好多天有1次新数据进来。

用定时器实时扫描来做好像太浪费资源,有没有其他可行的办法实现?
...全文
317 14 打赏 收藏 举报
写回复
14 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
scboy2012 2014-12-12
  • 打赏
  • 举报
回复
可以直接写数据库语句 查询数据库字段Id是否有记录
tongxuejie 2014-12-12
  • 打赏
  • 举报
回复
引用 8 楼 cherish58 的回复:
我不想实时刷新这个表,就是想如果这个表有新数据就调用.net程序来处理,问题是怎样才能调用.net程序?
引用 7 楼 diaodiaop 的回复:
sql中的insert触发器发送http 请求给asp.net的ashx 然后ashx收到请求之后 查询数据库新增的数据..然后做处理.. 我只能帮你这么多了 这个是最简单并且效率最高而且最容易维护的..... 剩下的 自己搜索吧
diaodiaop 已经说的很清楚啦,楼主试试,这种方法肯定是可行的。
cherish58 2014-12-02
  • 打赏
  • 举报
回复
我又不是给客户使用,要维护性和很定性有何用,当然要性能
  • 打赏
  • 举报
回复
每次插入的时候执行不就完事了。就像1楼说的那样省心又省力。
吹风的兔子 2014-12-01
  • 打赏
  • 举报
回复
好吧,我为 上面的 过激言论 道歉!! 我只是 看不惯 楼主 又在给 别人 埋坑!! 是我 狗拿耗子,多管闲事i:反正又不是 坑我 —— 我激动个 什么。
吹风的兔子 2014-12-01
  • 打赏
  • 举报
回复
“用定时器实时扫描来做好像太浪费资源,有没有其他可行的办法实现?” —— 我的回答是:呵呵! —————————————————————————— 无论是 触发器 还是 sqlDependency(SQL 缓存依赖:也是调用 触发器) —— 监视 插入行为:会比你 想象的更慢。 —————————————————————————— 最后: 定时器 浪费资源 —— 你让 定时器,每秒 查询 100次数据库, CPU 利用率 也在 1% 以下。 我不喜欢那些 打着 “性能” 的旗号,将 简单的事情 复杂化 的 人。 —————————————————————————— 举个例子:监视 时间,到了 22:00 就关机。 >第一种做法:计算当前时间 和 22:00 的 毫秒差 —— 让线程 休眠,线程醒来 就关机。【性能很快的做法】 >第二种做法:开辟一个 时钟,每秒检测一下 —— 时间是 22:00,就关机。【楼主认为 很慢的做法】 结果:这个项目 用了 第一种 做法!!! —— 交付给客户:很多BUG 测不出来【后来是 客户 改了系统时间 导致的。】 —————————————————————————— 最后,我要骂人了: 那些 打着 “性能” 旗号 做 傻事的人 给我死开 —— 维护性、稳定性 都没有,要性能有个 鸟用。
cherish58 2014-12-01
  • 打赏
  • 举报
回复
我不想实时刷新这个表,就是想如果这个表有新数据就调用.net程序来处理,问题是怎样才能调用.net程序?
by_封爱 2014-11-20
  • 打赏
  • 举报
回复
sql中的insert触发器发送http 请求给asp.net的ashx 然后ashx收到请求之后 查询数据库新增的数据..然后做处理.. 我只能帮你这么多了 这个是最简单并且效率最高而且最容易维护的..... 剩下的 自己搜索吧
feiyun0112 2014-11-20
  • 打赏
  • 举报
回复
用sqlDependency
http://www.cnblogs.com/yjmyzz/archive/2009/06/14/1502921.html
Aries_0219 2014-11-20
  • 打赏
  • 举报
回复
用触发器或者维护计划解决
凹加凸等于啥 2014-11-20
  • 打赏
  • 举报
回复
可以使用SSIS来做,它可执行。net程序,发布SSIS包时指定执行时间!
insus 2014-11-20
  • 打赏
  • 举报
回复
先确认你的原数据表A是否一个主键或是时间字段。 如果只有前者,那你最好创建一个表B,是来存储处理上一次处理最后的主键值。 每次去栓查是否有新记录时,你去获取表B的最大的主键,如28,如果是第一次,那这个值就是0。 然后用它去作原表A的查询条件。 IF EXISTS(SELECT TOP 1 1 FROM [A] WHERE [主键] > 28) BEGIN ---这里有记录,需要处理... END
cherish58 2014-11-20
  • 打赏
  • 举报
回复
就是判断这张表是否有数据,如果有就调用.net程序来处理,触发器能调用.net程序吗?
by_封爱 2014-11-20
  • 打赏
  • 举报
回复
什么叫新数据... insert into 的叫新数据吗? 你可以写insert触发器来实现..... 触发器里面调用XXOO来处理 当然了 XXOO可能是存储过程啦 sql语句啦.. 或者是webservice 都可以...
相关推荐
发帖
.NET社区

6.1w+

社区成员

.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
帖子事件
创建了帖子
2014-11-20 04:10
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。