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

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • 外键约束 SHOW CREATE TABLE tb_name;//显示数据表创建时的命令; 创建子表users1: ->CREATE TABLE users1( ->id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, ->username VARCHAR(10) NOT NULL, ->pid(外键) SMALLINT(与参照键类型相同) UNSIGNED(与参照键有无符号类型也要相同) ->FOREIGN KEY (pid) REFERENCES provinces (id) ON DELETE CASCADE, ->); 外键的作用体现在:如果我们要添加一个省份的字段,需要添加个char型的,现在有了关系型数据库,我们只需要存储省份的id即可; INSERT provinces(pname) VALUES('A'); INSERT provinces(pname) VALUES('B'); INSERT provinces(pname) VALUES('C'); INSERT users1(username,pid) VALUES('Tom',1); INSERT users1(username,pid) VALUES('Jerry',2); INSERT users1(username,pid) VALUES('Lucy',3); 当删除provinces中的id=3的数据C时,相应的users1中的Lucy也会被删掉,更新的话同样如此。 SET NULL:从父表删除或更新行,会设置子表中的外键列为NULL,如果使用该选项,必须保证子表列没有指定NOT NULL RESTRICT:拒绝对父表的删除或更新操作; NO ACTION:标准的SQL语句,在MYSQL当中与RESTRICT相同 实际开发中,我们很少使用物理的外键约束,而是使用逻辑约束;物理的外键约束只有innoDB这种存储引擎才会支持,MYISAM这种引擎就不支持物理的外键约束。反过来说,当使用的引擎为MYISAM时,只能使用逻辑外键(即两个表的设计的逻辑关系)。
    查看全部
  • MySQL目录
    查看全部
  • 外键约束 mysql> create table province( -> id smallint unsigned primary key auto_increment, -> pname varchar(20) not null -> ); create table users( -> id smallint unsigned primary key auto_increment, -> pid smallint unsigned, -> foreign key(pid) references province(id) -> );
    查看全部
  • 定常:若存储数据位数不足则用空格补上不足的位数 变常:按照数据的长度大小进行存储
    查看全部
  • mysql提示符
    查看全部
  • 修改mysql提示符
    查看全部
  • 查询
    查看全部
  • 外键约束的参照操作
    查看全部
  • 查看数据表
    查看全部
  • 显示当前打开数据库: SELECT DATABASE(); 显示当前服务器版本: SELECT VERSION(); 显示当前时间: SELECT NOW(); 显示当前用户: SELECT USER();
    查看全部
  • 创建数据表
    查看全部
  • 数据表
    查看全部
  • 创建数据表、约束、插入、查找记录
    查看全部
    0 采集 收起 来源:回顾和概述

    2016-11-23

  • 总结: a、创建数据表之前选择在哪一个数据库操作 USE test; b、查询该数据库是否被打开 SELECT DATABASE(); c、创建数据表 CREATE TABLE tb1( username CHAR(20), age TINYINT UNSIGNED, UNSIGED是指不能有负数 salary FLOAT(8,2) UNSIGNED ); d、查看数据表 SHOW TABLES; e.查看数据表结构:其实是列的性质 SHOW COLUMNS from tb2; f.向表中插入数据 INSERT tb1 VALUES ('Tom',20,4321.32);如果没有指定列,则全部字段都必须赋值,否则用报错 INSERT tb1(username,salary) VALUES ('Jenny',2999.29); g、查询表中的数据 SELECT * from tb1; h、非空验证:null / not null 在创建表时,如果后面没有加NULL/NOT NULL,字段默认为空;如果加了NOT NULL,表示字段不能为空。并且如果为not null,又没有录入数据的话,就会无法进行编译 CREATE TABLE tb3( username CHAR(20) NOT NULL, 若插入数据时没有给username赋值,则报错,因为已经设置不能为空 age TINYINT UNSIGNED NULL ); i. 自动编号:auto_increment 必须与主键primary key组合使用,默认起始值为1,每次的增量为1; create table tb3( id smallint unsigned auto_increment primary key, username varchar(20) ); j.主键约束:PRIMARY KEY 主键保证记录的唯一性,每张数据表只能存在一个主键,主键自动被NOT NULL 注意:设置了主键以后,该字段不能为空,且不能重复 k.唯一约束:UNIQUE KEY 主键约束一张表只能有一个,但是唯一约束一张表可以有多个,且唯一约束可以为空值 l.默认值:DEFAULT 当插入记录的时候,如果没有明确为字段赋值,则自动赋予默认值 sex ENUM('1','2','3') DEFAULT '3'
    查看全部
    1 采集 收起 来源:总结

    2016-11-23

  • 外键约束的要求
    查看全部

举报

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

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