MySQL学习笔记(2)

时间:2023-03-08 20:22:58
MySQL学习笔记(2)

打开数据库

USE db_name;

MySQL学习笔记(2)

SELECT DATABASE();查看当前所选中的数据库

创建数据表

CREATA TABLE [IF NOT EXISTS] table_name ( column_name data_type , …)

MySQL学习笔记(2)UNSIGNED无符号类型

查看数据表

SHOW TABLES [FROM db_name] [LIKE 'pattern' | WHERE expr]

FROM db_name 可以指定去查看某一个数据库内部的表

MySQL学习笔记(2)

查看数据表列表

SHOW COLUMNS FROM tbl_name

MySQL学习笔记(2)

记录的插入

INSERT [INTO] tbl_name [(col_name , …)] VALUES (val , … )

如果要省略col_name的话,要把所有字段赋值才行。

MySQL学习笔记(2)

MySQL学习笔记(2)

记录的查找

SELECT expr,… FROM tbl_name

eg.SECECT * FROM tb1;

MySQL学习笔记(2)

添加单列

ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition [FIRST | AFTER col_name]

FIRST插入的列在最前面

AFTER插入的列在指定列的后方

省略的话插入的列在最后

MySQL学习笔记(2)

添加多列

不能指定位置关系,只能在原来数据表的下方

ALTER TABLE tbl_name ADD [COLUMN] (col_name column_definition, …)

删除列

ALTER TABLE tbl_name DROP [COLUMN] col_name

ALTER TABLE tbl_name DROP [COLUMN] col_name,… (←删除多列)

也可以同时删除之后,进行添加操作,逗号分割。


添加主键约束

ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_col_name,…)

MySQL学习笔记(2)

添加唯一约束

ALTER TABLE tbl_name ADD [CONSTRAINT[symbol]] UNIQUE [INDEX | KEY] [index_name] [index_type](index_col_name,…)

MySQL学习笔记(2)

添加/删除默认约束

ALTER TABLE tbl_name ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}

MySQL学习笔记(2)

删除主键约束

ALTER TABLE tbl_name DROP PRIMARY KEY

删除唯一约束

ALTER TABLE tbl_name DROP {INDEX | KEY} index_name

MySQL学习笔记(2)

修改列定义

ALTER TABLE tbl_name MODIFY [COLUMN] col_name column_definition [FIRST | AFTER col_name]

ALTER TABLE tbl_name CHANGE[COLUMN] old_col_name new_col_name column_definition [FIRST | AFTER col_name](←还可以更改列名称)

修改数据表名字

①ALTER TABLE tbl_name RENAME [TO | AS] new_tbl_name

②RENAME TABLE tbl_name TO new_tbl_name [,tbl_name2 TO new_tbl_name2]…(←可以为多张数据表的更名)

不要随意更改表名或者列名


空与非空

NULL 字段可以为空

NOT NULL 字段不可以为空

MySQL学习笔记(2)

MySQL学习笔记(2)

自动编号(记录唯一性)

AUTO_INCREMENT

自动编号,必须和主键(PRIMARY KEY)组合使用

默认情况下起始值为1,每次增量为1(INT型,或者小数位数为0的float型)

PRIMARY KEY

每张表只能有一个主键,主键保证记录的唯一性,主键自动为NOT NULL

MySQL学习笔记(2)

MySQL学习笔记(2)

MySQL学习笔记(2)

AUTO_INCREMENT必须和主键一起用,但是主键不一定必须要和AUTO_INCREMENT一起用。

MySQL学习笔记(2)

MySQL学习笔记(2)

唯一约束

UNIQUE KEY

一张数据表可以存在多个UNIQUE KEY,但是只能存在一个PRIMARY KEY

唯一约束可保证记录的唯一性,可以为空值(NULL),每张数据表可以存在多个唯一约束

MySQL学习笔记(2)

ALTER TABLE tb_name ADD COLUMN column_name type value;

例如:alter table mybook add column publish_house varchar(10) default '';

MySQL学习笔记(2)

username 不能有两个Tom, 这就是唯一约束

默认约束

DEFAULT

插入记录时,没有明确为字段赋值,则自动赋予默认值。

MySQL学习笔记(2)

MySQL学习笔记(2)

MySQL学习笔记(2)

插入记录时没有给sex赋值,则默认为3


总结

  • 数据类型:字符型,整型,浮点型,日期时间型
  • 数据表操作:插入记录,查找记录
  • 记录操作:创建数据表,约束的使用
  • 约束:NOT NULL, DEFAULT, PRIMARY KEY, UNIQUE KEY, FOREIGN KEY
  • 表级约束,列级约束
  • 针对字段的操作:添加删除字段,修改列定义,列名称
  • 针对约束操作:添加删除约束
  • 针对数据表:数据表更名