欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SQL 使用DDL创建数据库&数据表时需要注意什么?

程序员文章站 2022-03-01 19:46:45
...

使用DDL创建数据库&数据表时需要注意什么?

  1. 了解 DDL 的基础语法;
  2. 使用 DDL 定义数据表时,都有哪些约束性。
  3. 使用 DDL 设计数据库时,都有哪些重要的原则。

DDL的基础语法及设计工具

DDL(Data Definition Language)数据定义语言。它定义了数据库的结构和数据表的结构。

DDL 中,我们常用的功能是增删改,分别对应命令是 create、drop 和 alter。需要注意的是,在执行 DDL 的时候,不需要 commit,就可以完成执行任务。

1. 对数据库进行定义

CREATE DATABASE mydb;	// 创建一个名为 mydb 的数据库
DROP DATABASE mydb;   	// 删除一个名为 mydb 的数据库

2. 对数据表进行定义

CREATE TABLE table_name  	// 创建一个名为 table_name 的表结构

创建表结构

创建一个球员表,表名为 player,里面有两个字段:

  • 一个是 player_id,它是 int 类型,自增长。
  • 另一个是 player_name 字段是varchar(255)类型。两字段都不为空。
CREATE TABLE player (
	player_id int(11) NOT NULL AUTO_INCREMENT,
	player_name varchar(255) NOT NULL
);
  • 字符集是 utf8
  • 排序规则是 utf8_general_ci 代表对大小写不敏感
  • 如果设置为 utf8_bin 代表对大小写敏感

修改表结构

  1. 添加字段
ALTER TABLE player ADD (age int(11));
  1. 修改字段名,将 age 字段改成 player_age
ALTER TABLE player RENAME COLUMN age to player_age
  1. 修改字段的数据类型,将player_age 的数据类型设置为 float(3,1)
ALTER TABLE player MODIFY (player_age float(3,1));
  1. 删除字段,删除刚添加的player_age字段
ALTER TABLE player DROP COLUMN player_age;

设计数据表的原则

三少一多的原则:

1.数据表的个数越少越好

RDBMS 的核心在于对实体和联系的定义,也就是E-R图(Entity Relationship Diagram),数据表越少,证明实体和联系设计得越简洁,既方便理解又方便操作。

2.数据表中的字段个数越少越好

字段个数越多,数据冗余的可能性越大。设置字段个数少的前提是各字段相互独立,而不是某个字段的取值可以由其它字段计算出来。

3.数据表中联合主键字段个数越少越好

设置主键是为了确定唯一性,当一个字段无法确定唯一性的时候,就需要采用联合主键的方式(也就是用多个字段来定义一个主键)。

联合主键中的字段越多,占用的索引空间越大,不仅会加大理解难度,还会增加运行时间和索引空间,因此联合主键的字段个数越少越好。

4.使用主键和外键越多越好

“三少一多”原则的核心就是“简单可复用”。

  • 简单指的是用更少的表、更少的字段,更少的联合主键字段来完成数据表的设计。
  • 可复用则是通过主键、外键的使用来增强数据表之间的复用率。