likes
comments
collection
share

MYSQL入门(二)DDL数据定义与操作

作者站长头像
站长
· 阅读数 7

这一篇文章介绍MYSQL的DDL数据定义语言

1.DDL数据定义语言

1.1 库表和字段的关系

DDL操作时对于库, 表和字段的操作--- 库表和字段的关系如下 MYSQL入门(二)DDL数据定义与操作

  • mysql服务相当于excel软件
  • 每一个mysql数据库相当于一个Excel文件
  • 每一个文件中的多个sheet详单相当于数据表
  • 每个表中的列索引相当于字段

1.2 DDL数据库操作

1.数据库创建

CREATE DATABASE 数据库名称;

创建数据库时,该数据库名称已存在会报错,为了避免报错,我们在创建数据库时增加 IF NOT EXISTS判断表是否存在

CREATE DATABASE IF NOT EXISTS test_db;

一般我们创建数据库时会增加数据集,因为不书写数据集会导致无法存储中文

CREATE DATABASE 数据库名 CHARSET = utf8;

CREATE DATABASE 数据库名 CHARACTER SET 'utf8';

2.查看当前服务中所有的数据库名称

SHOW DATABASES;

3.使用数据库

USE 数据库名称;

4.查看当前正在使用的数据库

SELECT DATABASE();

5.删除数据库

DROP DATABASE 数据库名称

删除数据库时,删除的数据库名称不存在会报错,可以使用IF EXISTS判断

DROP DATABASES IF EXISTS 数据库名称;

6.查看数据库的创建语句,一般可以用来查看数据库的字符集、默认外键名等

SHOW CREATE DATABASE 数据库名称;

1.3 DDL数据表操作

数据表不能脱离数据库而单独存在,在创建和使用数据表之前必须先使用数据库

1.创建数据表

create table 表名 ( 字段1 数据类型 [约束], 字段2 数据类型 [约束], 字段3 ...... )

创建的数据表名称不能存在,同样可以使用 IF NOT EXISTS判断

  1. 查看当前数据库中所有的数据表名称

SHOW TABLES;

  1. 查询表中字段的详细信息

DESC 表名

DESCRIBE 表名

4.删除数据表

DROP TABLE 数据表名;

同样可以使用IF EXISTS来判断是否存在,这个关键字就是判断某个对象存不存在的,判断为是就执行,否则就什么都不做

5.如果我们在一个数据库中想操作另一个数据库,可以使用数据库名.表名的形式 6.修改表名

ALTER TABLE 要修改的旧表名 RENAME TO 新表名;

1.4 DDL数据表字段操作

字段是依托于数据表存在的,不能单独存在

1.新建字段

ALTER TABLE 表名 ADD 字段名称 字段类型 [约束];

2.修改字段

ALTER TABLE 表名 CHANGE 旧字段名 新字段名 字段类型 [约束]

如果不需要修改字段名,可以把旧名称和新名称写一样,也可以使用MODIFY关键字

ALTER TABLE 表名 MODIFY 字段名 字段类型 [约束]

3.删除字段

ALTER TABLE 表名 DROP 字段名;

所有DDL语言的删除操作都用DROP,所有DML语言的删除都用DELETE

1.5 comment注释

comment 就是对于数据库中的数据表或数据字段进行注释的,方便后续使用IDE工具时查询数据内容,创建表时加上就行,如

CREATE TABLE person
(
    id     INT COMMENT '身份证号',  
    name   VARCHAR(30) COMMENT '姓名',
    gender VARCHAR(30) COMMENT '性别'
) COMMENT '人口表';

2. DML数据操作语句

2.1 数据插入语句

DML语言: 数据操作语言, 对于数据库进行增 删 改的操作,关键字INSERT

-- 1.一次插入一条数据,不指定字段

INSERT INTO 表名 VALUE(字段值1,字段值2,字段值3...);

-- 2.一次插入多条数据,不指定字段

INSERT INTO 表名 VALUE(字段值1,字段值2,字段值3...),(字段值1,字段值2,字段值3),(...),...;

-- 3.一次插入一条数据,指定字段

INSERT INTO 表名(字段1,字段2...) VALUE(字段值1, 字段值2...);

-- 4.一次插入多条数据,指定字段

INSERT INTO 表名(字段1, 字段2,...) VALUES(字段值1, 字段值2,...), (字段值1, 字段值2,...),...;

注意事项:

  1. 插入数据时,字段值数量要与字段数量相匹配
  2. VALUES既可以插入多条数据,也可以插入一条数据,所以我们一般都用VALUES即可
  3. 插入数据时,数据值和字段顺序必须匹配,假如我们指定了字段,要按指定的顺序来插入

2.2 数据的修改和删除

-- 1.修改数据记录 -使用UPDATE关键字

UPDATE 表名 SET 字段名 = 值 [WHERE筛选条件];

-- 2.删除数据记录 -DELETE关键字

DELETE FROM 表名 WHERE [筛选条件];

注意事项:

  1. 修改数据记录时,被修改的字段的值必须与原数据的数据类型一致
  2. 修改时一般都有有where筛选条件,不然会对所有数据进行修改
  3. DELETE删除的是整条字段,如果只删除某一个字段的某个值,使用UPDATE将其改为空即可
  4. 怎样删除所有数据记录?给一个恒成立的条件即可,如1=1,或者也可以使用TRUNCATE TABLE 表名