CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

很着急的数据库原理问题!

楼主hawkxjy(developer)2003-06-04 20:37:56 在 MS-SQL Server / 基础类 提问

数据库中触发器,存储过程的作用与区别是什么?  
   
  老师今天留了这个问题,翻遍书没看出个究竟,请解释一下!谢了 问题点数:0、回复次数:3Top

1 楼caiyunxia(夏才云)回复于 2003-06-04 20:49:11 得分 0

触发器是一种特殊的工程,不能带参数,返回记录或直  
  只能在数据插入/删除/修改才能触发  
  Top

2 楼cjc79(岁月无痕)回复于 2003-06-04 20:59:55 得分 0

1、定义:  
   
        触发器(Trigger)是一种特殊类型的存储过程,它不像一般的存储过程,可以直接使用存储过程的名字来调用或执行。触发器的执行是通过事件来触发执行的,所以称为触发器。当用户发布对指定的表或表中列进行修改(包括插入、删除和更新)的命令时(事件发生),SQL   SERVER将自动执行在相应触发器中的SQL语句。  
   
  2、作用:  
   
        主要是用来保持数据的完整性和一致性。  
   
  3、语法:  
   
        CREATE   TRIGGER   trigger_name  
            ON   table_name  
            FOR   {INSERT,DELETE,UPDATE}  
        AS  
            SQL_statements  
   
  注意:  
   
        SQL   SERVER为每个触发器都创建两个专用的工作表:inserted表和deleted表。这是两个逻辑表,由系统来维护,不充许用户直接对这两个表进行修改,它们存放于内存中,不存放在数据库中。这两个表的结构总是与被触发器作用的表的结构相同。触发器工作完成,与触发器相关的这两个表也被删除。  
   
  Inserted表:存放由INSERT或UPDATE语句的执行而导致要加到该触发器作用的表中去的任何新行。    
  Deleted表:存放由DELETE或UPDATE语句的执行而导致要从被该触发器作用的表中删除的任何行。    
  4、举例:  
   
          完成在销售产品是,自动减少仓存的数量。  
          销售表(sales)为:supplier,barcode,unit,qty,money…  
          仓存的表(inventory)为:barcode,unit,qty,money…  
   
      //触发器  
      Create   Trigger   trg_I_salesqty   On   sales  
      For   insert   As  
      Update   inventory.qty   =   inventory.qty   -   inserted.qty,inventory.money   -   inserted.money  
      From   inventory,inserted  
      Where   inventory.barcode   =   inserted.barcode  
      Return  
   
      这样,通过运行把触发器加入到后台数据库后,每次对销售表(sales)进行插入记录也就是销售时,仓存不自动减少数量和金额。当然真正在写应用程序时,触发器要写得严密些。    
   
  Top

3 楼CrazyFor(冬眠的鼹鼠)回复于 2003-06-04 21:09:22 得分 0

翻翻联机帮助就可以了。:)  
  Top

相关问题

  • ☆☆☆☆☆数据库原理问题!!!☆☆☆☆☆
  • 80分求救!!真的很着急.关于拷贝数据库的问题
  • 用Enterprise ManagerL连接本机数据库时出错?(很着急,请指教)
  • 数据库基本工作原理
  • C#连接数据库的原理
  • 各位大虾,我想学数据库原理,但现在很多教材都是理论+某一实际数据库的操作,我想学的深一些(只讲理论),尤其是数据库的建立和效率问
  • 数据库恢复的问题,和奇怪,很着急,在线等,解决立刻给分!
  • 大家开发三层,用什么数据库。我正为数据库着急?
  • SQL数据库执行的原理与过程是什么?
  • 小问题:远程桌面数据库访问原理?

关键词

  • 数据库
  • 存储过程
  • 执行
  • 语句
  • 修改
  • 销售
  • sales
  • sql
  • 触发器
  • 表

得分解答快速导航

  • 帖主:hawkxjy

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo