用触发器实现的  插入 更新  删除  子表也变化

CREATE TABLE [dbo].[tablex] (
    [idx] [int] IDENTITY (1, 1) NOT NULL ,
    [ProductID] [int] NULL ,
    [productName] [char] (10) COLLATE Chinese_PRC_CI_AS NULL 
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[tabley] (
    [idy] [int] IDENTITY (1, 1) NOT NULL ,
    [ProductID] [int] NULL ,
    [productname] [char] (10) COLLATE Chinese_PRC_CI_AS NULL 
) ON [PRIMARY]
GO




CREATE TRIGGER  triDelete ON [dbo].[tablex] 
FOR   delete
AS

begin
declare @aa varchar(200)
set @aa=(select  productid   from deleted)
if @@rowcount>0
delete  tabley    where productid=@aa
end





CREATE trigger tritmp on tablex for insert
as
insert into tabley(ProductID) select i.ProductId from inserted as i   where  i.ProductId>100



CREATE TRIGGER  triUpdate  ON [dbo].[tablex] 
FOR   UPDATE
AS
IF UPDATE(productname)
begin
declare @aa varchar(200)
set @aa=(select  productid  from INSERTED)
declare @bb varchar(200)
set @bb=(select  productname  from INSERTED)
if (@@rowcount>0)
update  tabley  set productname=@bb where productid=@aa
end






insert tablex values(300,'东方')

update tablex set productname='大海' where productid=300
select * from tablex

select * from tabley

delete from tablex where productid=300
select * from tablex

select * from tabley

其实删除时也可以用外键
删除

CREATE TABLE [dbo].[TABLE1] (
    [UserId] [int] IDENTITY (1, 1) NOT NULL ,
    [name] [char] (10) COLLATE Chinese_PRC_CI_AS NULL 
) ON [PRIMARY]


CREATE TABLE [dbo].[TABLE2] (
    [id] [int] IDENTITY (1, 1) NOT NULL ,
    [Userid] [int] NULL ,
    [name] [char] (10) COLLATE Chinese_PRC_CI_AS NULL 
) ON [PRIMARY]
GO




ALTER TABLE [dbo].[TABLE2] ADD 
    CONSTRAINT [FK_TABLE2_TABLE1] FOREIGN KEY 
    (
        [Userid]
    ) REFERENCES [dbo].[TABLE1] (
        [UserId]
    ) ON DELETE CASCADE 
GO

select * from table1

select * from table2

insert table1 values('def')
insert table2 values (5,'def')
 select * from table1

select * from table2

delete from table1 where userid=5

转载于:https://www.cnblogs.com/gwazy/archive/2006/08/23/484536.html

用触发器实现主从表关系(主表更改从表更改 )相关推荐

  1. MYSQL中的主表和父表_主表,从表,关联表,父表,子表

    一.前言 在数据库设计中,Hibernate,iBatis等ORM框架的使用中经常听说主键,外键,主表,从表,关联表,父表,子表之类的术语,弄懂它们之前的区别与联系对于数据库设计和ORM框架的学习使用 ...

  2. java mysql 表关系分析_数据库表的关系

    表与表之间一般存在三种关系,即一对一,一对多,多对多关系. 下面分别就三种关系讲解数据库相关设计的思路和思考过程: (1)一对一关系 例如,下面的一张表,保存了人的相关信息,有男有女,要求查处所有的夫 ...

  3. mysql怎样区分主表从表_MySQL 主表与从表

    通过上一篇随笔,笔者了解到,实体完整性是通过主键约束实现的,而参照完整性是通过外键约束实现的,两者都是为了保证数据的完整性和一致性. 主键约束比较好理解,就是主键值不能为空且不重复,已经强调好多次,所 ...

  4. mysql 表关系传递,mysql数据表之间数据相互传递的问题

    mysql数据表之间数据相互传递的问题 近日,某操作需要从一个表(表A)读取一些数据,然后直接写入另外一个表(表B)(相当于一个备份) 平时没啥问题,某天测试MM将一些乱七八糟的数据写入后就出问题了, ...

  5. -day26 必备SQL和表关系及授权

    day26 必备SQL和表关系及授权 课程目标:掌握开发中最常见的SQL语句和表关系及授权相关知识点. 课程概要: 必备SQL(8个必备) 表关系 授权 1. 必备SQL语句 上一节讲解了最基础SQL ...

  6. 03_Mysql_约束与多表关系

    课程笔记Day27 约束 多表关系 第一章 约束 第01节 基础理论 1.约束概述 什么是约束呢?约束有什么作用呢? 生活当中的约束:法律的约束.道德的约束前面学习过的约束:XML当中 DTD约束.S ...

  7. MySQL——数据库表关系

    文章目录 一. mysql数据库中常见表关系 二. 一对一关系 1. 特点 2. 示例代码 三. 一对多关系 1. 特点 2. 示例代码 四. 多对多关系 1. 特点 2. 示例代码 五. 两表关联查 ...

  8. 010_多表的表关系

    一. 一对多表关系 1. 用户表user -- 用户的id: uid -- 用户名: username -- 密码: password -- 手机: phonecreate table `user` ...

  9. Django删除多对多表关系 :

    删除多对多表关系 : # 删除子表与母表关联关系,让小虎不喜欢任何颜色 # 写法1: child_obj = Child.objects.get(name="apollo") co ...

最新文章

  1. C语言的32个关键字
  2. 领先微软技术咨询公司招聘技术人员
  3. centos下排查vsftpd出现put零字节问题的记录
  4. 职校计算机课堂评课标准,中职学校计算机专业课堂教学评价(共2323字).doc
  5. 有家创业公司花重金要请我当CTO?!
  6. SQL73 考试分数(二)
  7. servlet-servletContext简述
  8. c语言中static 用法
  9. linux下tomcat缓存磁盘文件,Linux环境下清理Tomcat缓存
  10. 移动终端开发详解总结(一)(kotlin版)| CSDN创作打卡
  11. HPUX 无法启动 卡在EVN_MC_INITIATED
  12. ffmpeg/ffplay 添加实时的时间水印
  13. CFG保护机制校验逻辑分析
  14. Desperate Housewife 1-1
  15. doceker使用教程(一)
  16. 云存储和云计算之间是什么关系?
  17. Node.js - 自我总结
  18. 第5次作业+037+吴烨倩
  19. Eclipse插件AngularJS Eclipse 1.2.0离线安装包
  20. Latex 画图x, y轴格式

热门文章

  1. mysql数值处理函数exp_mysql数值函数
  2. CNN与Transformer结合,东南大学提出新架构 ConvTransformer
  3. 9张图带你领略AI态势!
  4. k-means算法原理及实战
  5. 饿了么java_eleme-openapi-java-sdk
  6. php执行先后顺序_PHP程序执行的过程原理
  7. RedisTemplate设置过期时间
  8. VSCODE 10个高效开发插件
  9. java 测试工具 oracle_SwingBench---ORACLE压力测试工具
  10. html5 制作商品显示介绍,HTML5+CSS3:3D展示商品信息示例