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

与MySQL的零距离接触

平然 学生
难度入门
时长 8小时29分
  • 插入记录
    查看全部
  • 语句规范
    查看全部
    0 采集 收起 来源:操作数据库

    2016-09-25

  • 1.primary key (主键约束) 一个表中只能有一个 2.UNIQUE KEY(唯一约束) (1)唯一约束可以保证记录的唯一性 (2)唯一约束的字段可以为空值(NULL) (3)每张数据表可以存在多个唯一约束
    查看全部
  • 主键可以写为PRIMARY KEY,也可以写成KEY 每张数据表只能存在一个主键且主键不能赋相同的值(因此 主键保证记录的唯一性) 主键自动为NOT NULL,也就是说必须要为主键赋值。但如果主键选择了AUTO_INCREMENT,那么不需要手动赋值。 auto_increment必须和主键primary key一起使用,但是主键primary key不一定要和auto_increment一块使用
    查看全部
  • 数据类型
    查看全部
    0 采集 收起 来源:总结

    2016-09-24

  • 本节知识点
    查看全部
    0 采集 收起 来源:小结

    2016-09-24

  • 1.修改列定义 ALTER TABLE tbl_name MODIFY [COLUMN] col_name column_definition [FIRST AFTER col_name]; ALTER TABLE users2 MODIFY id SMALLINT UNSIGNED NOT NULL FIRST; //将id字段的位置提到第一列 SHOW COLUMNS FROM users2; ALTER TABLE users2 MODIFY id TINYINT UNSIGNED NOT NULL; //修改数据类型,需注意数据丢失的问题 2.修改列名称 ALTER TABLE tbl_name CHANGE [COLUMN] col_name new_col_name column_definition [FIRSTAFTER col_name]; ALTER TABLE users2 CHANGE pid p_id TINYINT UNSIGNED; //修改列名称 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] ... 尽量少使用数据表的列名及表名的更名。 本节知识点: 1.约束 按功能划分:NOT NULL, PRIMARY KEY, UNIQUE KEY, DEFAULT, FOREIGN KEY 按数据列的数目划分:表级约束, 列级约束 2.修改数据表 针对字段的操作:添加/删除字段、修改列定义、修改列名称等。 针对约束的操作:添加/删除各种约束 针对数据表的操作:数据表更名(两种方式)
    查看全部
  • select user();
    查看全部
    0 采集 收起 来源:操作数据库

    2016-09-24

  • 1、删除主键约束: ALTER TABLE table_name DROP PRIMARY KEY; 2、删除唯一约束: ALTER TABLE table_name DROP {INDEXKEY} index_name; 3、删除外键约束: ALTER TABLE table_name DROP FOREIGN KEY fk_symbol; Ps1:唯一约束的 index_name 可通过 SHOW INDEX FROM table_name\G; 查询。 Ps2:外键约束的名字 fk_symbol 可通过 SHOW CREATE TABLE table_name; 查询。 Ps3:INDEX:index是索引标识,和create table name 中的table是相同的标识。 顺便删除索引:ALTER TABLE user2 DROP INDEX pid;
    查看全部
  • 1.添加主键约束 CONSTRAINT_PK主键名字为PK 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 [INDEXKEY] [index_name] [index_type] (index_col_name,...) e.g:ALTER TABLE users ADD UNIQUE (username); 3.添加外键约束 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 NULL; ALTER TABLE users ALTER age SET DEFAULT 15; ALTER TABLE users ALTER age DROP DEFAULT;
    查看全部
  • 1、添加单列:如果指定FIRST,则在整个表的最前方,默认不写为整个表的最后方;如果指定AFTER col_name,则在col_name的后面。 ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition [FIRST AFTER col_name] 2、添加多列:无法指定FIRST/AFTER、只能默认为最后方。 ALTER TABLE tbl_name ADD [COLUMN] (col_name column_definition,...) 3、删除单列 ALTER TABLE tbl_name DROP [COLUMN] col_name 4、删除多列(Ps:删除一列的同时,新增一列。其间用逗号隔开) ALTER TABLE tbl_name DROP [COLUMN] col_name, DROP [COLUMN] col_name,DROP [COLUMN] col_name
    查看全部
  • 1.表级约束与列级约束 (1)对一个数据列建立的约束,称为列级约束 (2)对多个数据列建立的约束,称为表级约束 (3)列级约束既可以在列定义时声明,也可以在列定以后声明 (4)表级约束只能在列定义后声明 2.主键、外键、非空、唯一、默认都是约束条件。主键、外键、唯一既可以作为表级约束,也可作为列级约束;而not null、default只有列级约束。
    查看全部
  • 在实际的开发过程中,我们很少使用物理的外键约束,很多都去使用逻辑的外键约束,因为物理的外键约束只有INNODB这种引擎才会支持,像我们另外的一种引擎MYISAM的引擎则不支持,反过来说,如果我想创建的数据表,假设存储引擎为MYISAM,而且又想使用外键约束的话,其实是不可能实现的,所以说,我们在实际的项目开发中,我们不去定义物理的外键,所谓的逻辑外键指的是就是我们在定义两张表的结构的时候,我们是按照存在的某种结构的方式去定义,但是不去使用FOREIGN KEY这个关键词来定义。
    查看全部
  • 外键约束 1. CASCADE: 从父表删除或更新且自动删除或更新子表中匹配的行。 2. SET NULL: 从父表删除或更新行,并设置子表中的外键列为NULL。如果使用该选项,必须保证子表列没有指定NOT NULL。 3. RESTRICT: 拒绝对父表的删除或者更新操作。 4. NO ACTION: 标准SQL的关键字,在MySQL中与RESTRICT相同。 添加父表: mysql> CREATE TABLE provinces( id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, pnane VARCHAR(20) NOT NULL ); 添加子表带CASCADE操作: mysql> CREATE TABLE user1( 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:保持数据一致性,完整性;实现一对一或一对多关系。 FOREIGN KEY (子表字段名) REFERENCES 父表 (父表字段名) 要求: 数据表的存储引擎只能为InnoDB:配置文件中default-storage-engine=INNODB; 父表和子表禁止使用临时表(子表:具有外键列的表;父表:子表参照的表) 外键列和参照列必须具有相似的数据类型。数字长度或有无符号必须相同,字符长度可不同 外键列和参照列必须创建索引。如果参照列不存在索引的话,MySQL将自动创建索引 在 MY.ini 文件中编辑默认的存储引擎:default-storage-engine=INNODB; 显示创建表的语句:SHOW CREATE TABLE table_name; 查看表是否有索引:SHOW INDEXS FROM table_name; 以网格查看表是否有索引:SHOW INDEXS FROM table_name\G; eg: 1.父表<br> create table provience (<br> id smallint unsigned auto_increment primary key,<br> proname varchar(20) not null<br> );<br> 2.子表<br> create table user(<br> id smallint unsigned auto_incremene primary key,<br> username varchar(10) not null,<br> pid smallint unsigned, <br> foreign key (pid) references provience(id)<br> );
    查看全部

举报

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

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