← 返回首页
MySQL基础教程(五)
发表时间:2020-03-15 15:26:23
讲解MySQL常用DDL语句。

1.如何创建数据库

在 MySQL 中,可以使用 CREATE DATABASE 语句创建数据库,语法格式如下:

CREATE DATABASE [IF NOT EXISTS] <数据库名>
[[DEFAULT] CHARACTER SET <字符集名>] 
[[DEFAULT] COLLATE <校对规则名>];

实例,创建myschool数据库:

CREATE DATABASE IF NOT EXISTS myschool
DEFAULT CHARACTER SET utf8mb4 
DEFAULT COLLATE utf8mb4_bin;

注意: Mysql的老版本的 utf8 编码最大字符长度为 3 个字节,如果遇到 4 字节的宽字符就会插入异常了。三个字节的 UTF-8 最大能编码的 Unicode 字符是 0xffff,在插入表情字符时会出现异常。MySQL在 5.5.3 之后增加了utf8mb4字符编码, utf8mb4(mb4 = most bytes 4),utf8是utf8mb4的子集,除了将编码改为utf8mb4外不需要做其他转换。而在各类符号文字逐步发展的过程中,像是包括 Emoji 表情(Emoji 是一种特殊的 Unicode 编码,常见于 ios 和 android 手机上),和很多不常用的汉字,推荐使用utf8mb4字符集。

2.如何创建表

在 MySQL 中,可以使用 CREATE TABLE 语句创建表。其语法格式为:

CREATE TABLE <表名> ([表定义选项])[表选项][分区选项];

实例,创建users表:

create table users (
   uid int not null,
   username varchar(20),
   password varchar(20),
   primary key (uid)
) ;

//或者如下
create table users (
   uid int not null primary key,
   username varchar(20),
   password varchar(20)
);

查看表结构使用desc命令。

DESC <表名>;

实例,查看users表结构:

desc users;

3.如何更改表结构

修改表指的是修改数据库中已经存在的数据表的结构。MySQL 使用 ALTER TABLE 语句修改表。常用的修改表的操作有修改表名、修改字段数据类型或字段名、增加和删除字段、修改字段的排列位置、更改表的存储引擎、删除表的外键约束等。

常用的语法格式如下:

ALTER TABLE <表名> [修改选项]

常见的修改项如下:

{ ADD COLUMN <列名> <类型>
| CHANGE COLUMN <旧列名> <新列名> <新列类型>
| ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }
| MODIFY COLUMN <列名> <类型>
| DROP COLUMN <列名>
| RENAME TO <新表名> }

实例:给users表添加gender字段。

alter table users 
add column gender varchar(2) after password; 

4.如何删除表和数据库

使用 DROP TABLE 语句可以删除一个或多个数据表,语法格式如下:

DROP TABLE [IF EXISTS] 表名1 [ ,表名2, 表名3 ...]

要删除已创建的数据库时,可以使用 DROP DATABASE 语句。其语法格式为:

DROP DATABASE [ IF EXISTS ] <数据库名>

实例:删除users表和myschool数据库。

drop table IF EXISTS users;
drop database IF EXISTS myschool;