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

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • MySQL常用命令

    显示当前服务器版本

    显示当前日期时间

    显示当前用户

    查看全部
  • MySQL提示符

    查看全部
  • 修改MySQL提示符

    查看全部
  • 清屏命令cls

    查看全部
  • MySQL退出

    查看全部
  • MySQL登陆及几个指令

    查看全部
  • MySQL目录结构

    查看全部
  • 一般情况下,在windows软件中,典型安装都是将安装文件存储在C/Program Files下

    查看全部
  • TINYINT1 SMALLINT2 MEDIUMINT3 INT4 BIGINT8

    查看全部
  • 本节知识点https://img1.sycdn.imooc.com//5b9c61ba00017b8011740662.jpg

    查看全部
    0 采集 收起 来源:小结

    2018-09-15

  • 修改数据表【添加或删除约束】:

    ALTER TABLE table_name ADD [CONSTRAINT [symbol]] PRIMARY KEY [index_type](index_col_name,...)//这是添加主键约束(只能有一个)

    ALTER TABLE table_name ADD [CONSTRAINT [symbol]] UNIQUE [INDEX/KEY] [index_name] [index_type] (index_col_name,...);//这是添加唯一约束(可以有多个)

    ALTER TABLE table_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name,...) reference_definition;//这是添加外键约束(可以有多个)

    ALTER TABLE table_name ALTER [COLUMN] col_name {SET DEFAULT literal(这个literal的意思是加上的default)/DROP DEFAULT}//添加或删除默认约束

    ALTER TABLE table_name DROP PRIMARY KEY;//删除主键约束

    ALTER TABLE table_name DROP {INDEX/KEY} index_name;//删除唯一约束

    ALTER TABLE table_name DROP FOREIGN KEY fk_symbol;//删除外键约束

    最后两个跟索引有关的注意一下????

    查看全部
  •  修改数据表【增加或删减列】:

    A.增加单列:ALTER TABLE table_name ADD [COLUMN] col_name column_definition [FIRST/AFTER col_name];//first的意思是新插入的列在在前面,after xxx的意思是新列在xxx后面,如果省略这个新列就会在最下面

    B.添加多列:

    ALTER TABLE table_name ADD [COLUMN] (col_name column_definition,...)//会直接加在最后面,无法选择新列加在哪里

    C.删除列

    ALTER TABLE table_name DROP col_name;

    注意:可以连续删除两列,用逗号隔开即可E.G ALTER TABLE table_name DROP col1_name,DROP col2_name;

    也可以同时删除与加新列 E.G ALTER TABLE table_name DROP col1_name,ADD col2_name col2_definition;

    查看全部
  • INSERT into tb1_name [(col_name)] select

    EXISTS与IN的使用效率的问题,通常情况下采用exists要比in效率高,因为IN不走索引,但要看实际情况具体使用:
    IN适合于外表大而内表小的情况;EXISTS适合于外表小而内表大的情况。

    在插入记录前,需要检查这条记录是否已经存在,只有当记录不存在时才执行插入操作,可以通过使用 EXISTS 条件句防止插入重复记录。
    INSERT INTO TableIn (ANAME,ASEX) 
    SELECT top 1 '张三', '男' FROM TableIn
    WHERE not exists (select * from TableIn where TableIn.AID = 7)

    查看全部
  • 【外键约束的参照操作】:

    A.CASCADE:从父表删除或更新时自动删除或更新子表中匹配的行

    B.SET NULL:从父表删除或更新行,并设置子表中外键列为NULL。如果使用该选项,必须保证子表列没有指定NOT NULL

    C.RESTRICT:拒绝对父表的删除或更新操作

    D.NO ACTION:与C相同

    E.G

    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 );

    查看全部
  • 约束分为列级约束(约束针对某一个字段)和表级约束(约束针对两个或两个以上字段)

    列级约束既可以在列定义前声明也可以在列定义后声明;而表级约束要在列定义后声明

    【外键约束FOREIGN KEYp】的要求:

    A.父表和子表必须使用相同的存储引擎即InnoDB,且禁止使用临时表

    B.外键列和参照列必须具有相似的数据类型。其中数字的长度或是否有符号位必须相同字符的长度可以不同

    C.外键列和参照列必须创造索引,如果外键列不存在索引的话系统将自动生成

    E.G

    CREATE TABLE provinces(

    id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,

    pname VARCHAR(20) NOT NULL );

    CREATE TABLE users( //这里的users称为子表,有外键的表称为子表;子表所参照的表称为父表,就是上面的provinces

    id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,

    username VARCHAR(10) NOT NULL,

    pid SMALLINT UNSIGNED,

    FOREIGN KEY (pid) REFERENCES provinces(id));// 这里的pid为外键列,而provinces的id为参照列

    查看全部

举报

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

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