1报错:分析成功,但执行错误,提示:消息 8197,级别 16,状态 4,过程 trg_readerinfo_del,第 1 行对象 ‘dbo.readerinfo’ 不存在,或对此操作无效。

表readerinfo是存在的,在管理器那看到dbo.readerinfo是存在的
分析:

1是否开头加上 use 数据库名 语句 并且 go语句隔开,否则提示

2如果go隔开后,仍然失败,查看新建查询语句的位置是否有误?方法:select * from 数据表名,如果报错,说明新建查询有问题,重新新建查询语句

3再次尝试发现成功创建触发器!

例子:删除新闻类别时同时删除类别下的所有新闻,新闻下的所有评论

alter TRIGGER trig_CategoryDelete
ON category
instead of DELETE
AS
BEGIN
declare @caid int
select @caid=id from deleted
–删除评论
delete comment where newsID in (select id from news where caid=@caid )
–删除新闻
delete news where caid=@caid
–删除类别
delete category where id=@caid
END
GO

ps1:

create trigger updateDeleteTime
on user
for update
as
begin update user set UpdateTime=(getdate()) from user inner join inserted on user.UID=Inserted.UID
end

上面的例子是在执行更新操作的时候同时更新,一下修改时间。 关键在于Inserted表 触发器语句中使用了两种特殊的表:deleted 表和 inserted 表。 Deleted 表用于存储 DELETE 和 UPDATE 语句所影响的行的复本。在执行 DELETE 或 UPDATE 语句时,行从触发器表中删除,并传输到 deleted 表中。Deleted 表和触发器表通常没有相同的行。

Inserted 表用于存储 INSERT 和 UPDATE 语句所影响的行的副本。在一个插入或更新事务处理中,新建行被同时添加到 inserted 表和触发器表中。Inserted 表中的行是触发器表中新行的副本。

1.插入操作(Insert) Inserted表有数据,Deleted表无数据
2.删除操作(Delete) Inserted表无数据,Deleted表有数据
3.更新操作(Update) Inserted表有数据(新数据),Deleted表有数据(旧数据)

应用实例:

代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
-- =============================================
-- Description:    <当是短信充值时修改相信的记录使记录不会重复获取>
-- =============================================
ALTER TRIGGER [dbo].[updatestart]ON [dbo].[OrderTelecom] FOR update
AS
BEGINDECLARE @state int;DECLARE @note2 varchar(50)SELECT  @state= Inserted.ortState,@note2 =Inserted.ortNote2 from InsertedIF @state=1 AND @note2=1begin--当发短信猫取走记录时修改状态为成功和取过的状态update OrderTelecom set OrderTelecom.ortState=2 ,OrderTelecom.ortSmsmessages='短信充值成功'from OrderTelecom inner join Inserted on OrderTelecom.ortId=Inserted.ortId endif @state in(2,3,10) and @note2=0beginupdate OrderTelecom set ortNote2=1from OrderTelecom inner join Inserted on OrderTelecom.ortId=Inserted.ortId endEND
TIPS

触发器里,插入数据或者更新的数据,都被放在inserted这张表里,所以,你只要在触发器里查询这张表,而删除或者被更新的数据都被放在deleted这张表里

decare @ID

select @ID=id from inserted

–上面这句是查询修改后的ID

select @ID=id from deleted

–上面这句是查询修改前的ID

select @ID

对象 'dbo.xxx' 不存在,或对此操作无效。为表创建触发器,为什么提示对象不存在?相关推荐

  1. 跨线程操作无效:从创建该线程的线程以外的线程访问控件

    我有一个场景. (Windows窗体,C#.. NET) 有一个主窗体可以承载一些用户控件. 用户控件执行一些繁重的数据操作,因此,如果我直接调用UserControl_Load方法,则UI在加载方法 ...

  2. 线程间操作无效: 从不是创建控件的线程访问它。

    private void button1_Click(object sender, EventArgs e){//报错:从不是创建控件的线程访问它Thread t = new Thread(() =& ...

  3. C#线程间操作无效: 从不是创建控件 XX 的线程访问它

    转自:http://www.arasplm.net/index.php/zh/community/myblog/c-xx-.html 前些天做的要使用到线程的项目,现在和大家分享一下感受! 以下面小列 ...

  4. 黄聪:BackGroundWorker解决“线程间操作无效: 从不是创建控件的线程访问它” (C# VS2008)...

    在编程中经常会遇到在一个按钮中执行复杂操作,并将复杂操作最后返回的值加入一个ListView或ComboBox中候选.这个时候程序会卡,当程序员将这些卡代码放进线程(Thread)中后发现当对控件操作 ...

  5. 线程间操作无效: 从不是创建控件的线程访问它

    转自原文 线程间操作无效: 从不是创建控件的线程访问它. using System; using System.Collections.Generic; using System.ComponentM ...

  6. System.InvalidOperationException:“线程间操作无效: 从不是创建控件“txtPortName02”的线程访问它。”...

    "System.InvalidOperationException"类型的未经处理的异常在 System.Windows.Forms.dll 中发生 其他信息: 线程间操作无效: ...

  7. 线程间操作无效,从不是创建控件的线程访问它。

    最近在开发项目时用到了操作线程的问题,在新线程中写入了操作控件的代码如: this.btnToolUpload.Enabled = true; 但是在线程执行过程中,当执行到这段代码时提示:" ...

  8. 【转】“线程间操作无效: 从不是创建控件的线程访问它”

    经典解决"线程间操作无效: 从不是创建控件的线程访问它" 在编程中经常会遇到在一个按钮中执行复杂操作,并将复杂操作最后返回的值加入一个ListView或ComboBox中候选.这个 ...

  9. 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析...

    最近,在做一个使用线程控制下载文件的小程序(使用进度条控件显示下载进度)时,遇到这样的问题, 错误显示: 未处理的"System.InvalidOperationException" ...

最新文章

  1. canvas百分比加载动画
  2. python配置opencv最简单_(Python)从零开始,简单快速学机器仿人视觉Opencv—第二节:OpenCV的视频操作...
  3. 美团把AI搞出一股烟火气
  4. TSS描述符表的作用
  5. Linux基础知识--进程管理与计划任务
  6. Addr、@运算符与Pointer类型
  7. Chrome扩展应用Infinity New Tab的备份
  8. 数据结构带头结点单向不循环链表(C语言版)
  9. 西瓜创客python编程进阶收费_西瓜创客和编程猫有什么不同?哪个更值得报名?...
  10. 竞赛|数据竞赛Top解决方案开源整理-科大讯飞AI营销算法、阿里妈妈搜索广告、腾讯广告算法、搜狗的用户画像
  11. 【mac】Mac 安装Brew命令
  12. Android接入TapTap踩坑
  13. 计算机网络名怎么解决,指定的网络名不再可用怎么办解决教程
  14. Mars3D开发教程学习步骤(不定时更新
  15. DLink无线路由器做交换机配置
  16. 单片机 switch c语言,单片机入门-C51语言switch-case语句电路应用实例
  17. qcustomplot圆_Qt之QCustomPlot(图形库)
  18. json生成shp_shp与json互转(转载)
  19. 电脑开机黑屏,只有鼠标箭头(windows无法加载桌面)?
  20. keepalived配置,解决vip无法ping通,虚拟服务器端口无法访问的问题

热门文章

  1. CSS边距---盒子模型
  2. 用Photoshop制作简单贺卡
  3. SQL基础--gt; 约束(CONSTRAINT)
  4. javascript提醒
  5. 关于用C#编写ActiveX控件3(转)
  6. 镁光ssd管理工具 linux,镁光C400固态硬盘08TH固件及升级软件
  7. java for 循环中if判断只进入第一个_「每天三分钟跟我学Java」之条件语句和循环结构...
  8. html5移动web开发黑马掌上商城_月入35k大佬总结:web前端必须学习的内容(附全套前端教程)...
  9. java jdk1 5手机版,java jdk1.7|java7_绿茶手机网
  10. Docker 基本操作