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

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • 一般常用的多为列级约束,很少使用表级约束。 PS: NOT NULL,DEFUALT.只有列级约束
    查看全部
  • CASCADE:删除或更新父表中的数据相应的删除或更新子表中的相匹配的行; SHOW CREATE TABLE tb_name;//显示数据表创建时的命令; 创建子表:users1; >CREATE TABLE users( >id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, >username VARCHAR(10) NOT NULL, >pid(外键) SMALLINT(与参照键类型相同) UNSIGNED(与参照键有无符号类型也要相同),//外键的作用体现在这:如果我们要添加一个省份的字段,需要添加个char型的,现在有了关系型数据库,我们只需要存储省份的id即可; >FOREIGN KEY (pid) PREFERENCES provinces (id) ON DELETE CASCADE, >); 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时,只能使用逻辑外键(即两个表的设计的逻辑关系)。
    查看全部
  • 约束 1、保证数据的完整性和一致性 2、分为表级约束(针对两个或两个以上字段)和列级约束(只针对某一个字段) 3、约束类型包括: NOT NULL(非空约束) PRIMARY KEY(主键约束) UNIQUE KEY(唯一约束) DEFAULT(默认约束) FOREIGN KEY(外键约束) FOREIGN KEY(外键约束):保证数据的一致性和完整性,实现一对一或一对多关系 要求: 1、父表和子表必须使用相同的存储引擎(InnoDB),禁止使用临时表。 C:\Program Files\MySQL\MySQL Server 5.5/my.ini修改MySQL配置文件,default-storage-engine=INNODB 修改完之后重启MySQL;查看创建的表格是否为INNODB引擎,SHOW CREATE TABLE tb_name; 2、外键列和参照列必须具有相似的数据类型,其中数字的长度和是否有符号位必须相同,而字符的长度可以不同 3、外键列和参照列必须创建索引,如果外键列不存在索引的话,MySQL将会自动创建索引。 语法: pid SMALLINT UNSIGNED FOREIGN KEY (pid) REFERENCES 主表名 (参照列) 父表当中的参照列一般为主键列,已经默认添加索引,子表的外键列会自动添加索引, 查看索引:SHOW INDEXES FROM tb_name\G;(以网格形式展示)
    查看全部
  • DEFAULT: 默认值,当插入记录时,如果没有明确为字段赋值,则自动赋予默认值
    查看全部
  • 主键约束和唯一约束的区别 PRIMARY KEY | UNIQUE KEY 主键约束 | 唯一约束 一张表只有一个 | 一张表可以有多个 不能为空(NULL)| 可以为空值(NULL)
    查看全部
  • MySQL支持的存储引擎
    查看全部
  • 1.主键:primary key,每张数据表只能有一个主键,保证记录的唯一性,自动为NOT NULL 2.自动编号:auto_increment必须和主键一起使用,主键不一定必须和auto_increment一起使用 3.在创建表时,字段后面加上key 或primary key即可
    查看全部
  • update 要更新的表名 连接条件 关联的表 on 条件 set 更新的值
    查看全部
    0 采集 收起 来源:多表更新

    2017-08-11

  • AUTO_INCREMENT,自动编号属性,必须与主键组合使用 默认情况下,起始值为1,每次的增量为1(所以AUTO_INCREMENT必须为数值型) 可以是整型也可以是浮点型,但是浮点数必须类似于FLOAT(8,0),DOUBLE(8,0),必须是0 保持记录的唯一性。
    查看全部
    0 采集 收起 来源:MySQL自动编号

    2017-08-11

  • 字段可设置属性,NULL为空,NOT NULL不能为空
    查看全部
  • 1. 插入数据的命令 INSERT [INTO] table_name [(column1, column2...)] VALUES(value1, value2...) 2、记录的查找 记录查找: SELECT expr,...FROM tab_name
    查看全部
  • SHOW COLUMNS FROM tb1; 查看tb1中的数据表结构
    查看全部
  • DROP FUNCTION function_name;删除函数
    查看全部
  • DELIMITER //:重新定义语句结束标识符为//,默认是分号;
    查看全部
  • 自定义日期函数实例: root_my >CREATE FUNCTION recTime() RETURNS VARCHAR(40) -> RETURN DATE_FORMAT(NOW(),'%Y年%m月%d日 %H时%i分%s秒'); Query OK, 0 rows affected (0.00 sec) root_my >SELECT recTime(); +---------------------------------+ | recTime() | +---------------------------------+ | 2017年08月11日 14时58分48秒 | +---------------------------------+
    查看全部

举报

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

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