如果你那个视图,是 单表的, 没写 触发器的。

那么 如果 删除视图中的数据 成功了,那么 表中的数据 就被删除了。

如果那个视图, 写了个 INSTEAD OF 触发器. 但是里面没有任何删除的动作。

那么 可能你 DELETE FROM 视图, 最后表的数据,一点也没变化, 也是可以的。

1> CREATE VIEW v_main_sub AS

2> SELECT

3> test_main.id AS main_id,

4> test_main.value AS main_value,

5> test_sub.id AS sub_id,

6> test_sub.value AS sub_value

7> FROM

8> test_main, test_sub

9> WHERE

10> test_main.id = test_sub.main_id;

11> go

1> SELECT * FROM v_main_sub;

2> go

main_id main_value sub_id sub_value

----------- ---------- ----------- ----------

1 ONE 1 ONEONE

2 TWO 2 TWOTWO

(2 行受影响)

1> UPDATE v_main_sub

2> SET main_value='ONX'

3> WHERE main_id = 1;

4> go

(1 行受影响)

1> UPDATE v_main_sub

2> SET sub_value='ONXONX'

3> WHERE main_id = 1;

4> go

(1 行受影响)

1> DELETE FROM v_main_sub WHERE main_id = 1;

2> go

消息 4405,级别 16,状态 1,服务器 GMJ-PC\SQLEXPRESS,第 1 行

视图或函数 'v_main_sub' 不可更新,因为修改会影响多个基表。

1> CREATE TRIGGER v_main_sub_trigger

2> ON v_main_sub

3> INSTEAD OF DELETE

4> AS

5> DECLARE

6> @main_id INT,

7> @sub_id INT;

8> BEGIN

9> SELECT @main_id=main_id, @sub_id=sub_id FROM deleted;

10>

11>

12> PRINT(@main_id);

13> PRINT(@sub_id);

14> END;

15> go

1> DELETE FROM v_main_sub WHERE main_id = 1;

2> go

1

1

(1 行受影响)

1> DELETE FROM v_main_sub WHERE sub_id = 1;

2> go

1

1

(1 行受影响)

对于多表关联的视图, 删除的时候,需要人为的去判断

例如当 主表 和 子表,都只有一条记录的情况下。

无法判断 本次删除, 是要删除掉一个子表的记录,留下主表的。

还是 主表 子表的数据,一同删除。

取消

评论

mysql删除视图sql语句_怎么样删除视图中的全部数据 用SQL语言编写。相关推荐

  1. drop sql语句_用于从表中删除数据SQL Drop View语句

    drop sql语句 介绍 (Introduction) This guide covers the SQL statement for dropping (deleting) one or more ...

  2. sql语句分组mysql_以数据库字段分组显示数据的sql语句(详细介绍)

    $dsn = "mysql:host=localhost;dbname=group"; $db = new PDO($dsn, 'root', "); $db->e ...

  3. mysql中的级联删除的语句_级联删除sql语句-数据库级联删除语句-sql删除语句

    SQl语句的级联删除问题 删除应该有顺序 1,删除link表 delete from ref,link where ref.link_code=link.link_code and link_id=? ...

  4. 出生日期范围的Sql语句_【呕心总结】python如何与mysql实现交互及常用sql语句

    9 月初,我对 python 爬虫 燃起兴趣,但爬取到的数据多通道实时同步读写用文件并不方便,于是开始用起mysql.这篇笔记,我将整理近一个月的实战中最常用到的 mysql 语句,同时也将涉及到如何 ...

  5. python拼接sql语句_【Python】拼接MySQL常用语句

    import pymysql class MK_sql (): """ 构建mySQL常见语句:增删改查排序 """ def __init_ ...

  6. 合肥工业大学—SQL Server数据库实验三:SQL语句创建和删除基本表

    SQL语句创建和删除基本表 1. 编写6个基本表 2. 修改基本表结构,完整性约束条件 3. 用Drop table 语句删除基本表 1. 编写6个基本表 设有简单教学管理的6个关系模式如下: 系(系 ...

  7. mysql高效sql语句_高效SQL优化 非常好用的SQL语句优化34条

    高效SQL优化 非常好用的SQL语句优化34条 相关软件相关文章发表评论 来源:2011/2/13 9:38:43字体大小: 作者:佚名点击:576次评论:0次标签: 类型:电子教程大小:8.5M语言 ...

  8. 使用sql语句创建和删除约束示例代码

    使用sql语句创建和删除约束  约束类型 主键约束(Primary Key constraint) --:要求主键列数据唯一,并且不允许为空.  唯一约束(Unique constraint) --: ...

  9. mysql 查询数据库索引语句_利用SQL语句查询数据库中所有索引

    本章我们就要讲解一下如何利用sql语句来查询出数据库中所有索引明细.当然了,我们可以在microsoft sql server management studio中选择"表"- & ...

最新文章

  1. Go 学习笔记(68)— goroutine 并发控制神器 Context
  2. tensorflow学习笔记(二十五):ConfigProtoGPU
  3. 【MySQL】缩略语PK NN UQ BIN UN ZF AI G、基本操作语句
  4. 无副作用、效果超越吗啡!用微电极精准管理大脑“疼痛中心”,科学家探索止痛新方法...
  5. CodeSmith实用技巧(十五):使用快捷键
  6. [转]HTTP请求模型和头信息
  7. react-native-webview禁止缩放
  8. Gym101128F:Landscaping
  9. Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)...
  10. Android系统匿名共享内存Ashmem(Anonymous Shared Memory)在进程间共享的原理分析
  11. java实现封装的三步是_JAVA基础-封装
  12. 【宇宙探秘】物理角度分析,蚂蚁从万米高空掉下会摔死吗?
  13. jquery插件:图片截取工具jquery.imagecropper.js
  14. solr索引大小对比
  15. python数据挖掘实验报告_数据挖掘实习报告
  16. YUV格式简介、YUV444、YUV422、YUV420
  17. Trustzone OP-TEE 在QEMU平台上的编译、运行与测试
  18. linux mint 中文字体,Ubuntu和Linux Mint自定义全局字体
  19. 数据库中了勒索病毒,怎么办?
  20. 1分钟轻松爬数据(web scraper插件使用教程)

热门文章

  1. DDoS防御选高防IP还是高防CDN?
  2. 《Hands-On Machine Learning with Scikit-Learn TensorFlow》读书笔记(二):端到端的机器学习
  3. MySQL的自身防御机制_自我防御机制
  4. 云原生相关介绍,25 个点很全面
  5. SIMPLIS仿真软件3-暂态分析(Transient Analysis)详解
  6. git Incorrect username or password (access token)问题解决
  7. css浮动,清除浮动,溢出属性,定位,设置透明度
  8. ASTER GDEM v3.0高程数据批量下载
  9. Pr速成3小时学会视频剪辑[副业学习会]
  10. 这项镜头贴膜技术背后,藏着让VR变轻巧的秘密