上节课我们给大家介绍了数据库的基本概念,具体请回顾 打开数据库的大门——SQL。本节课我们以关系型数据库MySQL为例,跟大家介绍关系型数据库的基本用法。
一、创建数据库环境
既然我们要使用MySQL数据库,首先需要安装MySQL数据库,具体可以参考MySQL安装教程https://www.cnblogs.com/winton-nfs/p/11524007.html。下载安装好MySQL数据库环境后就可以正常使用mysql数据库了。有需要的话还可以安装MySQL数据库客户端工具,这样就不用在命令行进行操作了,比较好用的MySQL数据库客户端工具有SQLyog、Navicat for MySQL、Valentina Studio等,不过大部分都是收费的。这里我们使用的是免费的Valentina Studio,可以根据个人需要自行选择安装。
二、创建数据库
数据库就是我们存放数据表的仓库,就好比我们电脑中的文件夹,刚刚安装好的MySQL数据库就像我们刚从数码城买回来的新电脑一样,开机以后发现里面什么也没有(电脑里默认已经安装好的软件不算,不要抬扛。。。),这时候我们想在新电脑中创建各种文件夹,用来存放各种我们将来要用的文件。
MySQL数据库也是一样,我们连接进入刚刚安装好的MySQL数据库后发现里面也是空的,什么也没有,这时候我们就想着要创建第一个数据库,用来存放后续的一些数据表。这时数据库就如同电脑的新建文件夹,而数据表就像是我们文件夹中的一个个文档,每个数据表根据不同的要求分门别类地存放着各种数据。如下图所示。
比如,我们要创建一个名为firstddb的数据库,可以使用以下创建语句。
创建好数据库以后,后续我们就可以在这个firstdb数据库下面创建各种数据表了。当然,我们也可以使用同样的方法创建更多其他新的数据库。
【记重点!!!】创建数据库基本语法:
create database 数据库名称;
注意:SQL语句不区分大小写,且通常以英文分号(;)结尾。
三、创建数据表
创建好数据库之后,我们就可以在数据库下创建各种数据表了,以下我们简称表。比如现在我们想要创建一个名为titanic的表,可以使用以下建表语句进行创建。
选中整个建表语句后点击左上角的??Execute按钮执行该创建语句,就能创建得到一个名为titanic的表。
【记重点!!!】建表语句基本语法:
create table if not exists 表名(
字段名1 字段类型 条件约束,
字段名2 字段类型 条件约束,
字段名3 字段类型 条件约束,
……
主键(主键字段)
)其他;
1、表字段
表字段是表示关系型数据库中的列,每个字段表示一列,分别存储不同的数据。titanic表中包含了PassengerId、Survived、Pclass等共12个字段。
各字段含义:
PassengerId 乘客编号
Survived 是否幸存
Pclass 船票等级
Name 乘客姓名
Sex 乘客性别
Age 乘客年龄
SibSp 兄弟姐妹/配偶数量
Parch 父母/子女数量
Ticket 船票号码
Fare 船票价格
Cabin 船舱
Embarked 登录港口
2、常见数据类型
数据类型是用来补充说明表字段的,通常每个字段都对应着不同的数据类型。比如,时间字段通常使用日期格式的数据类型,姓名字段通常使用字符串类型,年龄字段通常使用整数类型等等。以下是MySQL中几种常用的数据类型。
1)数值类型
2)日期类型
3)字符串类型
3、条件约束
条件约束顾名思义就是用来约束字段的,比如某些字段是非空的就必须保证该列不能出现空值,某些字段要求满足唯一性那么该列就不能出现重复值等等。MySQL中常见的条件约束有以下几种。
主键(PRIMARY KEY)
主键(PRIMARY KEY)”的完整称呼是“主键约束”。MySQL主键约束是一个列或者列的组合,其值能唯一地标识表中的每一行。这样的一列或多列称为表的主键,通过它可以强制表的实体完整性。例如在titanic表中,乘客编号PassengerId就表示一个主键,它能唯一标识表中的每一行数据,即每一个PassengerId分别对应着不同的乘客。
非空约束(NOT NULL)
标识该字段不能为空,非必须设置。
唯一性(UNIQUE)
标识该字段的值是唯一的,非必须设置。
自增(AUTO_INCREMEN)
标识该字段的值自动增加,整数类型,一般在定义主键中使用。
默认值(DEFAULT)
标识该字段须设置默认值,例如,设置默认值为0等,非必须设置。
无符号(UNSIGNED)
标识该字段无符号,非必须设置。
外键(FOREIGNKEY)
标识该字段为该表的外键,一般较少使用。