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. [Freescale]E9学习笔记-LTIB安装配置
  2. Linux常用命令集合
  3. AppCode下的cs类 取得相关路径
  4. 三角形最小路径和(动态规划)
  5. nacos 配置动态刷新_Nacos 动态刷新@RefreshScope 【实现配置和实例刷新】
  6. java 顺序存储键值对_java://Comparator、Comparable的用法(按照要求将map集合的键值对进行顺序输出)...
  7. Mblog 开源Java多人博客系统
  8. bzoj1008: [HNOI2008]越狱
  9. vue实现多行数据提交_Vue+Mockjs,模拟接口数据,实现前后端独立开发
  10. 高级文件系统管理——Linux基本命令(15)
  11. NASM汇编语言与计算机系统13-段的定义/vstart和align语法
  12. java制作风车图像的main方法_创意图形的绘制 会转的风车
  13. ncverilog脚本_基于脚本和test bench的ncverilog ASIC仿真实例分析
  14. C/C++心得-从内存开始
  15. '用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联,做JSP项目连接数据库 ....
  16. 一文带你浏览Graph Transformers
  17. 获取周日历/月日历input框选择的日期范围
  18. pygame交换式拼图设计
  19. 基于30多万条招聘信息的热门城市、地域 、薪资、人才要求的R语言数据可视化分析
  20. 360WIFI登陆页面地址

热门文章

  1. 岁月的脚步,被时间冲刷——如何修复EM ?
  2. xenomai linux测试,Xenomai 实时线程 select 测试
  3. arcgis导入坐标点转面_arcgis矢量化建筑数据
  4. Service worker 的概念和用法
  5. perl oracle ppm,Perl图形化包管理工具PPM学习使用笔记
  6. JavaWeb——servlet介绍
  7. DataSet运用DES加解密到Xml
  8. 用C#实现图片数据库存储与显示
  9. git push时出现403,443
  10. oracle column的设置,SQL*PLUS的命令行——column命令 - [ORACLE]