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. UA MATH566 统计理论1 充分统计量例题答案1
  2. android 桌面循环滚动字幕,循环滚动字幕
  3. Yolo-将coco数据集中的json文件转为txt且解决类别不连续问题
  4. 2.7.3 ecshop php7.1_ECshop 迁移到 PHP7版本时遇到的兼容性问题
  5. Qt工作笔记-重写滚轮事件,实现界面的增加、减少(放大、缩小)
  6. 设计模式 - 单例模式(Singleton Pattern)
  7. android imageview scaletype 按钮状态,Android ImageView 之 ScaleType 详解
  8. 浏览器工作原理(一):浏览器的进程与线程
  9. 弎问笔录30 之 狐狸和兔子(二)
  10. 计算机基础——局域网、以太网技术、令牌环网
  11. 使用OpenResty达到十万级并发超高性能Web应用(一):HelloWorld
  12. shipyard管理多HOST
  13. notepad拼心形_用shell脚本写个心形动画表格
  14. 计算机上如何保存ico格式,PS不能另存为ico格式怎么回事_PS不能另存为ico格式如何解决...
  15. 不要再重复造轮子了,Hutool这款开源工具类库贼好使
  16. docker 安装kafka
  17. 生鲜商城系统如何营销?
  18. es中的dsl练习题-----简单的dsl语句
  19. 关于VMware 虚拟机出现“找不到可以连接的有效对等进程”
  20. 禅道的部署测试如何使用禅道

热门文章

  1. ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'
  2. 设计模式系列之九:职责链模式
  3. 为MySQL选择合适的备份方式
  4. 使用Zabbix2.2自带的Mysql监控模板监控数据库
  5. iOS开发之UITableView全面解析
  6. 三维点云学习(3)8- 实现Spectral谱聚类
  7. linux通过操作界面和命令行的方式查看ip地址、mac地址
  8. javascript继承的原理
  9. js 运行中断停止_javascript 终止函数执行操作
  10. BlackBerry 应用程序开发者指南 第二卷:高级--第13章 应用程序间共享运行时对象...