SQL语法基础篇 —— 使用DDL创建数据库&数据库表时需要注意什么?


DDL的基础语法及设计工具

DDL的英文全称时Data Definition Language,中文是数据定义语言。

在DDL中,常用的功能是增删改,分别对应的命令是CREATE、DROP和ALTER。

1.对数据库进行定义

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

2.对数据表进行定义

创建表结构的语法

CREATE TABLE [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
);

注:语句最后以分号(;)作为结束符,最后一个字段的定义结束后没有逗号。

修改表结构

在创建表结构之后,对表结构进行修改。

1.添加字段,比如我在数据表中添加一个age字段,类型为int(11)

ALTER TABLE player ADD (age int(11));

2.修改字段名,将age字段改成player_age

ALTER TABLE player RENAME COLUMN age to player_age

3.修改字段的数据类型,将player_age的数据类型设置为float(3,1)

ALTER TABLE player MODIFY (player_age float(3,1));

4.删除字段,删除刚才添加的player_age字段

ALTER TABLE player DROP COLUMN player_age;
数据表的常见约束

当我们创建数据表的时候,还会对字段进行约束,约束的目的在于保证RDBMS里面数据的准确性和一致性。

主键约束:

主键起的作用是唯一标识一条记录,不能重复,不能为空,及UNIQUE+NOT NULL。

外键约束:

外键确保了表与表之间引用的完整性。一个表中的外键对应另一张表的主键。外键可以是重复的,也可以为空。

除了对键进行约束,还有字段约束。

NOT NULL约束

对字段定义了NOT NULL,即表名该字段不应为空,必须有取值。

DEFAULT

表明了字段的默认值。如果在插入数据的时候,这个字段没有取值,这个字段没有取值,就设置成默认值。

CHECK约束

用来检查特定字段取值范围的有效性,CHECK约束的结果不能为FALSE,比如对身高height的数据进行CHECK约束,必须>=0,且<3。

设计数据表的原则

三少一多原则

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

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

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

字段个数越多,数据冗余的可能性越大。

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

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

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

数据库的设计实际上就是定义各种表,以及各种字段之间的关系。

小结

你可能感兴趣的:(SQL必知必会)