Loading

MySQL学习笔记-数据定义语言

SQL-数据定义语言(DDL)

一.操作数据库

1.查询

# 查询所有数据库
show databases;

# 查询当前数据库
select database();

image-20230221193247699

2.创建

create database [if not exists] {数据库名} [default charset {字符集}] [collate {排序规则}];

常用可选项:

  1. [if not exists] :若重名数据库存在则不执行任何操作
  2. [default charset {字符集}] :指定数据库使用的字符集,如utf-8(据说不建议设为utf-8,建议设为utf-8mb4)
  3. [collate {排序规则}] :指定数据库使用的排序规则

image-20230221193332963

3.删除

drop database [if exists] {数据库名};

[if exists] :如果存在则删除

image-20230221193831320

4.使用

use {数据库名};

二.操作表

1.查询

1.1. 查询当前数据库所有表

show tables;

image-20230221195730088

1.2. 查询指定表

desc {表名};

image-20230221195741384

1.3. 查询指定表的建表语句

show create table {表名};

image-20230221200153753

2.创建

create table {表名}(
	字段1 类型 [null] [comment 注释],
	字段2 类型 [null] [comment 注释],
	...
	字段n 类型 [null] [comment 注释]
)[comment 表注释];

[null] : 允许使用null值

字段:指的是表中对象的内容的名字,如表中对象为人,那字段可以是姓名、性别、年龄等等,相当于表格中的列表头。

image-20230221195450511

注意:在终端中操作数据库,在未写分号之前回车会自动换行,但是换行后无法编辑上面行的内容,需要在换行前确认内容无误。

3.数据类型

挺多的,详细内容直接上网搜。

一些知识点:

  • 数值类型使用无符号时,直接在后面加上unsigned即可,如无符号整数:int unsigned

  • char(定长字符串)和varchar(变长字符串)使用时需要在后面括号加上制定的最大字符数量,如char(10)。

  • char类型即时存储的字符少于规定,依旧会以空格填充满规定长度;varchar类型则不会,存了多少就算多少(前提是少于规定字符数量)。char比varchar性能高。

4.修改和删除

4.1. 添加字段

alter table {表名} add {字段名} {类型(长度)} [comment {注释}] [{约束}];

image-20230221202455998

4.2. 修改

# 修改数据类型
alter table {表名} modify {字段名} {新数据类型(长度)};

# 修改字段名和字段类型
alter table {表名} change {旧字段名} {新字段名} {新数据类型(长度)} [comment {注释}] [{约束}];

# 修改表名
alter table {表名} rename to {新表名};

image-20230221202608243

4.3. 删除

# 删除字段
alter table {表名} drop {字段名};

# 删除表
drop table [if exists] {表名};

# 删除指定表,并重新创建该表
truncate table {表名};
posted @ 2023-02-24 16:40  YellowSeaa  阅读(9)  评论(0编辑  收藏  举报