依照表结构创建student表设置sno为主键_7.MySQL库表的创建与修改

这篇博客详细介绍了MySQL数据库的创建、选择、查看、修改和删除,以及表的定义、查看、修改、重命名和删除。内容涵盖数据库的字符集设定,表的字段定义和完整性约束,如 PRIMARY KEY、NOT NULL,还讨论了数据更新,包括插入、修改和删除记录的操作。是MySQL初学者的实用参考资料。

6a891e26-4713-eb11-8da9-e4434bdf6706.png

自己的MySQL阅读笔记,持续更新,直到看书结束。

数据库技术可以有效帮助一个组织或者企业科学、有效的管理数据,也是现在很多企业招聘数据分析师的必备要求之一。

大家如果看过MySQL的书,也可以看我的知识导图做一个复习,因为是自己的读书笔记,所以有的地方也不是很详尽,但是十分欢迎私下交流共同进步。

SQL整理的目录

今天有觉悟:专栏索引——个人的数据分析学习(持续更新)​zhuanlan.zhihu.com
73891e26-4713-eb11-8da9-e4434bdf6706.png

目录

  1. 定义数据库
    1. 创建数据库
    2. 选择与查看数据库
    3. 修改数据库
    4. 删除数据库
  2. 定义表
    1. 创建表
    2. 查看表
    3. 修改表
      1. 添加字段
      2. 修改字段
      3. 删除字段
    4. 重命名表
    5. 删除表
  3. 表的数据更新

1.定义数据库

1.1 创建数据库

基本语法格式

CREATE 
    • []内为可选项
    • | 或的关系,任选一项
    • db_name 数据库名字
    • IF NOT EXISTS 如果没有存在则创建
    • CHARACTER SET 指定数据库字符集 中文gb2312
    • COLLATE 指定字符集校对规则 中文为gb2312_chinese_ci

实例

  • 创建一个名为db_school的数据库
CREATE 

1.2 选择与查看数据库

1 选择数据库

USE 
    • USE指定其为当前数据库

2 查看数据库

SHOW 
    • 查看当前可用数据库列表

1.3 修改数据库

基本语法格式

ALTER 
    • 1.ALTER是修改全局特性,保存在db.opt文件中
    • 2.数据库名称可以省略,为修改当前数据库

实例

ATRER 
    • 修改已有数据库db_school的默认字符集和校对规则

1.4 删除数据库

基本语法格式

DROP 
    • 永久删除,但是用户权限要手动删除

实例

DROP 
    • 删除数据库db_school

2 定义表

2.1 创建表

基本语法格式

CREATE 

例子

CREATE 

主要语法说明

  • 1.指定表名和字段名
    • 创建表之前,需要指定数据库也就是db_name.tabl_name,并且分别加引号‘db_name'.'tabl_name'是可以的。
  • 2.完整性约束条件
    • 实体完整性约束条件(PRIMARY KEY、UNIQUE)
    • 参照完整性约束(FOREIGN KEY)
    • 用户自定义约束(NOT NULL、DEFAULT、CHECK约束等)
  • 3.NULL 与 NOT NULL
  • 4.AUTO_INCREMENT
    • 将该字段设置为自增属性可以给记录一个唯一而又容易确定的ID号。每个表只能定义一个,并且该字段得是主键约束或者候选键约束。
    • 如果插入了值,那么之后的值的排序都是根据你插入的值
  • 5.DEFAULT
    • 值在向数据表中插入数据时,如果没有明确给出某个字段所对应的值,则DBMS此时允许为此字段指定一个值。比如DEFAULT“汉”。
  • 6.存储引擎类型
    • SHOWENGINES查看系统所支持的引擎类型
    • InnoDB是默认,也是事务型数据库的首选引擎

2.2 查看表

1.查看表的名称

语法格式

SHOW 
    • {FROM | IN} db_name 可以显示为当前数据库的表名称

2.查看数据表的基本结构

  • 查看指定数据表的结构,包括字段名、字段的数据类型、字段值是否允许为空、是否为主键、是否有默认值等
  • SHOW COLUMNS { FROM | IN } tb_name [{FROM | IN} db_name] ;
    • {DESCRIBE | DESC} tb_name;

3.查看数据表的详细结构

SHOW 

2.3 修改表

1.添加字段

语法格式

ALTER 
    • FIRST将新添加的字段设置为表的第一个字段
    • AFTER放在指定字段后边
    • 没有值就最后边

实例

ALTER 

2.修改字段

语法格式

  • ALTER TABLE tb_name CHANGE [COLUMN] 原字段名 新字段名 数据类型 [约束条件];
  • ALTER TABLE tb_name ALTER [COLUMN] 字段名 {SET|DROP} DEFAULT;
  • ALTER TABLE tb_name MODIFY [COLUMN] 字段名 数据类型 [约束条件] [FIRST | AFTER 已有字段名]

实例1

  • 将数据库db_school中表tb_student的字段birthday重命名为age,并将其数据类型更改为TINYINT,允许其为NULL,默认值为18
ALTER 

实例2

  • 将数据库db_school中表tb_student的字段department的默认删除
ALTER 

实例3

  • 将数据库db_school中表tb_student的字段department的默认值修改为“经济学院”
ALTER 

实例4

  • 将数据库db_school中表tb_student的字段department的数据类型更改为VARCHAR(20),取值不允许为空,并将此字段移至字段studentName之后。
ALTER 

3.删除字段

语法格式

ALTER 

示例

  • 删除数据库db_school中表tb_student2的字段id
ALTER 

2.4 重命名表

1.RENAME[TO]子句

  • ALTER TABLE 原表明 RENAME [TO] 新表名;

2.RENAME TANLE

  • RENAME TABLE 原表名1 TO 新表名1[, 原表名2 TO 新表名2]... ...

2.5 删除表

  • DROP TABLE [IF EXISTS] 表1[,表2]... ...

3.表的数据更新

3.1 插入数据

1.1 插入完整的数据记录

INSERT 

1.2 为表的指定字段插入数据

INSERT 

1.3 同时插入多条数据记录

INSERT 

1.4 插入查询结果

INSERT 

1.5 使用REPLACE语句插入表数据

REPLACE 

使用INSERT如果碰到主键或者UNIQUE约束的时候会报错,而REPLACE不但不会报错,还会把旧有的记录删除

3.2 修改数据记录

UPDATE 

修改特定数据记录的时候需要通过WHERE去指定背修改的记录所需要满足的条件。

如果你想修改所有数据记录时,不需要指定WHERE子句。

WHERE里面可以嵌套查询子句

3.3 删除数据记录

DELETE 

删除指定的记录的时候,用WHERE取指定需要满足的条件。

WHERE里面也可以嵌套查询子句。

如果想要删除所有的记录,那么可以不带WHERE。或者有一个更快的方法就是用TRUNCATE,其为直接删除一个表然后创建一个表。

  • TRUNCATE [TABLE] tb_name
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值