数据库delete语句菜鸟_MySQL视图

数据库delete语句菜鸟_MySQL视图mysql中delete语句主要分为三个层次,下面简单介绍下1.最基础的条件删除,如下所示DELETEFROMtable_namewheretable_name.name=’dell’还有一种按序删除的方式如下DELETEFROMcustomersORDERBYNameLIMIT102.MySQLDELETE语句使用INNERJOIN子句DELETEaFROMtablenameASaLEFTJOINtemp_nameASbONa

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

mysql 中delete语句主要分为三个层次,下面简单介绍下

1. 最基础的条件删除,如下所示

DELETE FROM table_name  where    table_name.name='dell'

Jetbrains全家桶1年46,售后保障稳定

还有一种按序删除的方式如下

DELETE FROM customers ORDER BY Name LIMIT 10

2.MySQL DELETE语句使用INNER JOIN子句

DELETE  a FROM tablename AS a LEFT JOIN temp_name AS b ON a.ID = b.ID WHERE b.UserID > 0;


DELETE  a FROM tablename AS a LEFT JOIN temp_name AS b ON a.ID = b.ID WHERE b.ID IS not null;

3.MySQL ON DELETE CASCADE示例

此时 有A和B两个表,当删除A表的记录时,B表关联的字段自动删除,此时需要用到这种方式;

第一步, 创建buildings表,如下创建语句:

USE testdb;
CREATE TABLE buildings (
    building_no INT PRIMARY KEY AUTO_INCREMENT,
    building_name VARCHAR(255) NOT NULL,
    address VARCHAR(255) NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

第二步, 创建rooms表,如下创建语句:

USE testdb;
CREATE TABLE rooms (
    room_no INT PRIMARY KEY AUTO_INCREMENT,
    room_name VARCHAR(255) NOT NULL,
    building_no INT NOT NULL,
    FOREIGN KEY (building_no)
        REFERENCES buildings (building_no)
        ON DELETE CASCADE
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

请注意,在外键约束定义的末尾添加ON DELETE CASCADE子句。

第三步插入部分数据

INSERT INTO buildings(building_name,address)
VALUES('海南大厦','海口市国兴大道1234号'),
      ('万达水城','海口市大同路1200号');

INSERT INTO rooms(room_name,building_no)
VALUES('Amazon',1),
      ('War Room',1),
      ('Office of CEO',1),
      ('Marketing',2),
      ('Showroom',2);

此时 删除building_no = 2 的记录,可以看到rooms表中也删除了

DELETE FROM buildings WHERE building_no = 2;

请注意,ON DELETE CASCADE仅支持使用存储引擎支持外键(如InnoDB)的表上工作。 某些表类型不支持诸如MyISAM的外键,因此应该在使用MySQL ON DELETE CASCADE引用操作的表上选择适当的存储引擎。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/222878.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 新建表sql语句

    新建表sql语句一、新建表新建学生表(student):createtablestudent(idintnotnull,namevarchar2(50),sexvarchar2(25),birthdayvarchar2(225),createtimetimestamp,primarykey(id));给表和字段添加注释:commentonta

    2022年10月16日
  • vue router.beforeEach(),详解「建议收藏」

    vue router.beforeEach(),详解「建议收藏」router.beforeEach()一般用来做一些进入页面的限制。比如没有登录,就不能进入某些页面,只有登录了之后才有权限查看某些页面。。。说白了就是路由拦截。第一步规定进入路由需不需要权限@/router/index.jsimportAfrom’@/components/a'{path:’/a’,name:’a’,component:…

  • ios软件_iOS倒计时

    ios软件_iOS倒计时GitHub:https://github.com/remember17/CountdownTimer全局倒计时工具,可以维护任意多个倒计时当APP从后台进入前台的时候,倒计时不受影响,会根据时间线继续。使用方法: 把CountdownTimer.swift文件拖进项目 在CountdownTimer.swift的枚举CountDownKey中添加定时器 每个枚…

  • django示例_Django 模板

    django示例_Django 模板前言目前市面上有非常多的模板系统,其中最知名最好用的就是DTL和Jinja2。DTL是DjangoTemplateLanguage三个单词的缩写,也就是Django自带的模板语言。当然也可以配置

  • df 命令详解「建议收藏」

    df 命令详解「建议收藏」df命令是用来查看linux系统服务器文件系统的磁盘使用情况。可以用该命令来查看已经使用了多少空间,还有多少空间可用。       df命令格式为df[选线][文件名]       df命令功能:显示指定磁盘文件的使用情况。如果没有指定文件,则显示所有挂载的文件系统的磁盘使用情况      选项可以有            -a:全部文件系统列表,包含虚拟文件系统

  • python向上取整和向下取整(python除法向下取整)

    广告关闭腾讯云11.11云上盛惠,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元!importmathf=11.2printmath.ceil(f)#向上取整printmath.floor(f)#向下取整printround(f)#四舍五入#这三个函数的返回结果都是浮点型…python中向上取整可以用ceil函数,ceil函数是在math模…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号