数据库建表
- 针对MySQL,要建表必须先建库
- 如果是Oracle,是先创建用户,给用户分配存储空间(表空间),分配权限,这样子才能创建数据库表
SQL(结构化查询语言Structured Query Language)
-
什么是SQL:结构化查询语言
-
SQL作用:制定一套关于数据库操作的命令
-
SQL语句分类:
- DML:数据库操作语言(insert、update、delete)
- DDL:数据库定义语言(create table、create daatabase、alter table,create user)
- DCL:数据库控制语言(commit、rollback、grant、revoke)
-
SQL语句的关键字:create,table、database、insert、update、delete、select、alter
如何建数据库
通过工具去查看创建数据库的SQL命令
- 通过工具创建数据库
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vkV1fWCZ-1570870669147)(en-resource://database/4534:1)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ut0BVQlu-1570870669148)(en-resource://database/4536:1)]
CREAT DATABASE 'test'
创建数据库SQL
- 语法:creat database 数据库名称
- 如何利用SQLyog来创建数据库
如何创建表
数据库表的定义是什么
- 数据库的表就是存放数据的真正的地方
- 表能够反应出数据库中数据之间的关系
基于SQL语句的方式来创建表
- 语法
create table 表名{
列名 数据类型,
列名 数据类型
}
- 表就是E-R中的实体,表中列名就是E-R实体中的属性
数据类型
- 数据类型:主要是定义一个列存放数据的类型
- 必须了解的数据类型:
- 整型:存储整数
- 浮点型:包含小数点的数据
- 时间类型:时间戳
- 字符类型:字母、特殊符号、汉字
- 整型:int、interge、numeric
- 浮点型:double、float、numeric(长度,精度)
- 时间:date、datetime、timestamp
- 字符类型:varchar(长度)、char(长度)
约束
约束的概念
- 规范表中数据的完整性、合法性、一致性
约束分类
- 主键约束
- 外键约束
- 检查约束
- 非空约束
- 唯一约束
约束的创建方式
- 通过定义表的同时定义约束
- 如果一张表已经创建好,我们通过 alter table方式来添加表的约束
主键约束
- 关键字:primary key
- 作用:通过主键修饰的列,数据唯一,且不能为空
非空约束
- 数据库中NULL代表空
- 数据库中默认创建的列是为空的
默认约束
- 使用default关键来给列加入一个默认值,如果添加数据的时候没有给定值,则使用默认值
唯一约束
- 设置列的数据要么为空,要么添加数据的时候必须唯一
- 使用unique关键来设置唯一性
检查约束
- 使用check关键字来生成对某一列中数据校验,比如:判断年龄只能在18~30岁
- MySQL中无法用了
外键约束
- 外键是关联两张表数据之间的关系,同时用于多表查询时候数据的完整性
- 如果设置了外键,则在给子表添加数据的时候,外键中的值要么在父表中存在,要么为空。