为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
与MySQL的零距离接触_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • DELETE t1 FROM tdb_goods as t1 LEFT JOIN ..... 这儿的t1指的并不是原表,而是原表的副本t1,在与t2进行链接后得到的新的t1. 这个临时的t1表的数据即是要删除的多余的数据 多表删除. 多表删除(单表模拟多表删除重复数据) DELETE t1 FROM tdb_goods AS t1 LEFT JOIN (SELECT goods_id,goods_name FROM tdb_goods GROUP BY goods_name HAVING count(goods_name) >= 2) AS t2 ON t1.goods_name = t2.goods_name WHERE t1.goods_id > t2.goods_id;
    查看全部
    0 采集 收起 来源:多表删除

    2018-03-22

  • SQL的主键和外键约束 SQL的主键和外键的作用: 外键取值规则:空值或参照的主键值。 (1)插入非空值时,如果主键表中没有这个值,则不能插入。 (2)更新时,不能改为主键表中没有的值。 (3)删除主键表记录时,你可以在建外键时选定外键记录一起级联删除还是拒绝删除。 (4)更新主键记录时,同样有级联更新和拒绝执行的选择。 简而言之,SQL的主键和外键就是起约束作用。 关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键。 比如: 学生表(学号,姓名,性别,班级) 其中每个学生的学号是唯一的,学号就是一个主键; 课程表(课程编号,课程名,学分) 其中课程编号是唯一的,课程编号就是一个主键; 成绩表(学号,课程号,成绩) 成绩表中单一一个属性无法唯一标识一条记录,学号和课程号的组合才可以唯一标识一条记录,所以,学号和课程号的属性组是一个主键。 成绩表中的学号不是成绩表的主键,但它和学生表中的学号相对应,并且学生表中的学号是学生表的主键,则称成绩表中的学号是学生表的外键;同理,成绩表中的课程号是课程表的外键。
    查看全部
  • MySQL目录结构
    查看全部
  • 由于分类可能存在很多子类,可以通过在表中包含至少3个字段:id、name、pid来实现自身链接 自身连接相当于把自己当作两张完全相同的表,所以必须设置别名,而且使用左连接(LEFT JOIN) SELECT s.type_id,s.type_name,p.type_name FROM type AS s LEFT JOIN type AS p ON s.type_pid = p.type_id;
    查看全部
  • CREATE DATABASE ; DROP DATABASE ; SHOW WARNINGS ; SHOW DATABASES ; SHOW CREATE DATABASE ; ALTER DATABASE CHARACTER SET ;
    查看全部
    0 采集 收起 来源:操作数据库

    2017-08-04

  • 外键约束的要求
    查看全部
  • “函数可以应用到‘任何’字段上”
    查看全部
    0 采集 收起 来源:MySQL 加密函数

    2017-08-04

  • 陶吉诃德 零点了,费觉。 时间: 2016-11-09
    查看全部
    0 采集 收起 来源:MySQL 加密函数

    2017-08-04

  • exit; cls,同又分号吗?
    查看全部
    0 采集 收起 来源:MySQL 加密函数

    2017-08-04

  • 输出形式,“不必”,至于原理,与“之时”? 还有(not)?还是(no?)?
    查看全部
    0 采集 收起 来源:MySQL 聚合函数

    2017-08-04

  • id号,看起来,是从1开始的,啦,自动编号
    查看全部
    0 采集 收起 来源:MySQL 信息函数

    2017-08-04

  • 不一定要叫id,但是自动编号属性(这个字段)要存在,而且要设置成主键?不是那个的条件,而是要准备材料,误解?还有自动编号与赋值的冲突呢?先后呢? 再想到,关于C语言里的那个指针与函数的调用,外内与作用域的影响,还有啥子,时间?不是。。。相关。。。。?
    查看全部
    0 采集 收起 来源:MySQL 信息函数

    2017-08-04

  • desc test。。。。。。。。。。。。。
    查看全部
    0 采集 收起 来源:MySQL 信息函数

    2017-08-04

  • 1加之在后 2差值之,前减后 3严格?m%d%Y% 看截屏
    查看全部
  • 今天我们来学习存储过程,学习了Mysql之后,我们发现会经常进行数据表的增删改查操作,当我们成功输入SQL命令以后,MYSQL的引擎首先会对我们所输入的命令进行语法分析,来查看一下我们所输入的SQL语句是否正确,如果语法正确,它再进行编译,编译成MYSQL引擎可以识别的命令,最后开始执行,并且将执行的结果返回给客户端,这就是MYSQL的执行流程。 我们思考一下,如果将MYSQL的过程简化一下,也就是说如果我们省略了这其中的语法分析以及编译环节,Mysql的执行效率就可以提高,那么我们如何来实现这个任务,就需要这个存储过程,首先我们来了解一下什么是存储过程。 **存储过程是是SQL语句和控制语句的预编译集合,以一个名称存储并作为一个单元处理。**存储过程存储在数据库内,可以由应用程序调用执行,而且允许用户声明变量以及进行流程控制,存储过程可以接收参数,可以接收输入类型的参数,也可以接收输出类型的参数,并且可以存在多个返回值。通过这个简单的介绍我们可以发现,存储过程的效率要比我们单一的执行SQL语句的效率要高,原因在于我们以前假设这两个SQL语句,Mysql的引擎会对这两个语句逐一的进行语法分析,逐一的进行编译再逐一的去执行,而我们采用了存储过程之后,只有在第一次才进行语法分析和编译,以后我们客户端再去调用直接调用编译的结果就可以了,这样就直接省略了两个环节,效率比以前要好。 存储过程的优点: 1.增强SQL语句的功能和灵活性(存储过程内 可以编写控制语句,有很强的灵活性,可以完成复杂的判断以及较复杂的运算) 2.实现较快的执行速度(如果有大量SQL语句逐句语法分析编译执行效率会很低,而存储过程第一次编译时会载入内存,之后客户端再调用存储过程的时候会直接从内存中来执行,调用第一次编译的结果) 3.减少了网络流量(单独发送SQL语句让服务器来执行的话,那么通过HTTP协议所提交的数据量较大,假设我们现在删除users表中id为3的记录,我们来想一下```DELETE FROM users where id=3;```,整个字符量大约要快30个,假设有一个过程是DELETE user,我们只需要调用它把id传过去就可以了,我们发现我们只需要传递存储过程的名字以及id就可以了。所以说它提交给服务器的字符数量相对较少,也减少了网络的流量。)
    查看全部

举报

0/150
提交
取消
课程须知
要想学习本课程,你只需要知道数据库是个什么东东就足够了,是不是很easy?!
老师告诉你能学到什么?
1、MySQL安装与配置 2、数据类型 3、流程控制与运算符 4、DDL、DCL、DQL、DML 5、常用函数 6、表类型(存储引擎) 7、图形化工具
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!