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

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • 查看当前服务器下的数据表列表
    查看全部
    0 采集 收起 来源:操作数据库

    2017-02-05

  • 创建数据库
    查看全部
    0 采集 收起 来源:操作数据库

    2017-02-05

  • 修改数据表 1.修改列定义: ALTER TABLE tbl_name MODIFY [COLUMN] col_name column_definition [FIRST|AFTER col_name] 名称没问题,如图将id提到第一个位置 修改数据类型时由大改到小可能会导致数据的丢失 2.修改列名称: ALTER TABLE tbl_name CHANGE [COLUMN] old_col_name new_col_name column_definition [FIRST|AFTER col_name] CHANGE COLUMN可以修改列定义也可以修改列名称,比MODIFY COLUMN功能强大 3.数据表更名: 方法1; ALTER TABLE tbl_name RENAME[TO|AS] new_tbl_name 方法2: RENAME TABLE tbl_name TO new_tbl_name [,tbl_name2 TO new_tbl_name2]......可修改多个 尽量少使用列名和数据表名的修改
    查看全部
  • MySQL登陆 MySQL退出: mysql > exit; / quit; / \q;
    查看全部
  • 1.删除主键约束,因为主键有且只有一个,所以直接加PRIMARY KEY即可 ALTER TABLE 表名 DROP PRIMARY KEY; 2.删除唯一约束,删除该约束的索引 如何查看约束索引,SHOW INDEXES FROM 表名,其中的KEY_NAME即是索引名 ALTER TABLE 表名 DROP INDEX key_name; SHOW INDEXES FROM 表名\G 以网格形式查看索引 删除的是约束不是字段 3.删除外键约束,删除该外键约束的名称 系统会自动给外键列创建名称,通过SHOW CREATE TABLE 表名 来查看其中CONSTRAINT后加注的字段名称,该名称即为外键约束名称 ALTER TABLE 表名 DORP FOREIGN KEY 外键约束名称;
    查看全部
  • 数据表的修改操作:无非就是添加列,删除列,添加约束,删除约束。用的是ALTER,而INSERT是对数据表添加插入记录用的。 1.添加主键约束 ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_col_name,...) e.g:ALTER TABLE users ADD CONSTRAINT PK_users_id PRIMARY KEY (id); 2.添加唯一约束 ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] UNIQUE [INDEX|KEY] [index_name] [index_type] (index_col_name,...) e.g:ALTER TABLE users ADD UNIQUE (username); 3.添加外键约束 添加外键约束 要求同之前相同 (1)相同的存储引擎 (2)数字的数据类型相同,本节中均为SMALLINT ,符号为UNSIGNED 因为参照列中存在PRIMARY KEY,有索引,所以外键列会自动创建索引格式 ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name](index_col_name,...) reference_definition e.g:ALTER TABLE users ADD FOREIGN KEY (pid) REFERENCES provinces (id) 4.添加/删除默认约束 DEFAULT ALTER TABLE tbl_name ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT} e.g: ALTER TABLE users ADD age TINYINT UNSIGNED NOT NULL; ALTER TABLE users ALTER age SET DEFAULT 15; ALTER TABLE users ALTER age DROP DEFAULT;
    查看全部
  • 添加默认约束将DEFAULT 改为15
    查看全部
  • 显示索引:SHOW INDEXES FROM province;SHOW INDEXES FROM province\G;(以网格呈现) 打开数据表test:USE test; 查看创建命令:SHOW CREATE TABLE province; 查看数据表结构:SHOW COLUMNS FROM tb3; 插入记录:INSERT [INTO] tb1_name [(col_name,...)] VALUES (val,...); 查看数据表列表:SHOW TABLES [FROM db_name] [LIKE 'pattern'|WHERE expr]; 删除列:ALTER TABLE tb1_name DROP[COLUMN] col_name; 添加多列:ALTER TABLE tb1_name ADD[COLUMN] (col_name column_definition,...); 添加单列:ALTER TABLE tb!_name ADD[COLUMN] col_name column_definition [FIRST|AFTER col_name]; 删除记录:DELETE FROM province WHERE id=3; 验证表中是否有相应的记录:SELECT * FROM province;
    查看全部
  • 添加列:ALTER TABLE tb_name ADD 列名 数据类型 (+ AFTER xx , 将会添加新列到指定列xx 的后面); 举例:ALTER TABLE users ADD password VARCHAR(30) AFTER username; 另外:ALTER TABLE users ADD truename VARCHAR(20) FIRST; 会将新列添加到最前面。 删除列:ALTER TABLE tb_name DROP 列名,DROP 列名,DROP 列名...; 举例:ALTER TABLE users DROP password; ALTER TABLE users DROP age,DROP truename; 添加多列:ALTER TABLE tb1_name ADD[COLUMN] (col_name column_definition,...); 添加单列时,列名和列的定义不需要加小括号,可以指定列的位置;添加多列时,则需要给列名及列定义添加小括号,同时不能指定列的位置
    查看全部
  • 表级约束和列级约束 对于一个列所创建的约束,称之为列级约束,而对于两个或两个以上的列所创建的约束,我们称之为表级约束。 列级约束在使用的时候,既可以在列定义的时候声明,也可以在列定义以后声明 表级的约束只能在列定义以后来声明 在实际开发中,用列级约束比较多,表级约束很少用,除此之外,在所有的约束中,并不是说每种约束都存在着表级或列级约束,其中,NOT NULL 非空约束,DEFAULT约束这两种约束就不存在表级约束,它们只有列级约束,而对于其他的三种,像主键,唯一,外键,它们都可以存在表级和列级约束。
    查看全部
  • 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时,只能使用逻辑外键(即两个表的设计的逻辑关系)。
    查看全部
  • 删除记录: DELETE FROM 数据表名 WHERE 条件(比如id=3);
    查看全部
  • 外键约束的参照操作 1. CASCADE 需要在两张表中插入记录,必须先在父表中插入记录再在子表中插入记录 因为子表参照的是父表中的信息,若父表中没有则无法参照 2、SET NULL:从父表删除或更新行,并设置子表中的外键列为NULL。如果使用该选项,必须保证子列表没有指定NOT NULL。 3、RESTRICT:拒绝对父表的删除或更新操作。 4、NO ACTION:标准SQL的关键字,在MySQL中与RESTRICT相同。 FOREIGN KEY (子表列名) REFERENCES FROM 父表名(父表列名)[ON DELETE|UPDATE CASCADE|SET NULL|RESTRICT|NO ACTION]; 在实际开发中,存储引擎不为INNODB,无法使用FOREIGN KEY,普遍使用逻辑方法。
    查看全部
  • ON DELETE +删除时进行的操作
    查看全部
  • 启动服务: net start 服务名 结束服务: net stop 服务名
    查看全部

举报

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

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