2.3 跃跃欲试操作我的数据库——数据库创建

  MySQL数据库管理系统安装好之后,首先需要用户创建数据库和表空间,数据库是存储数据表的容器,数据表是数据库的基本操作对象。本章将详细介绍数据库的基本操作,主要内容包括:创建数据库、查看数据库、选择数据库、删除数据库、创建表空间、查看表空间、修改表空间、删除表空间。

2.3.1 “增删选查”数据库

  每次使用MySQL数据库前,我们都需要将MySQL连接到对应的服务器DBMS上。远程连接服务器时一般会要求我们输入用户名和密码,但如果使用的是本地服务器,直接在MySQL Workbench中单击Local instance MySQL进行本地连接即可。

(1)创建数据库
  最初连接到MySQL时,除存放系统配置文件的数据库外,没有任何其他可供用户操作的数据库。因此在执行数据库操作前,需要我们自行创建并选择一个数据库,即在系统磁盘上划分一块区域用来存储和管理数据。MySQL中创建数据库的基本SQL语法格式为:

create database database_name;

【例】创建库名为test01的数据库,输入语句如下:

create database test01;

create database是固定语法格式,表示创建数据库,database_name是用户自定义创建的数据库名称,该名称不能与已存在的数据库重名。
(2)查看数据库
  数据库创建好之后,我们可以通过固定命令来查看所有的数据库名称,MySQL中查看数据库的基本SQL语法格式为:

show databases;

MySQL输出结果如下:

(3)选择数据库
  每当用户登录MySQL时,都需要先选择一个数据库,才能对该数据库中的数据表进行相关操作,MySQL中选择数据库的基本SQL语法格式为:

use database_name;

【例】选择库名为test01的数据库,输入语句如下:

use test01;

为什么要选择数据库?
把数据库想象为Windows操作系统下的文件夹,数据表想象为文件夹中的文件。当我们想要在Windows下编辑某个文件的时候,必须先打开对应的文件夹,同理,当我们想要操作数据表的时候,必须先选择对应的数据库才行。
(4)删除数据库
  删除数据库是将已存在的数据库从系统磁盘上清除,清除之后,数据库包括数据库中所有的数据都会被一同清除,删除数据库命令和创建数据库命令基本类似,MySQL中删除数据库的基本SQL语法格式为:

drop database database_name;

【例】删除库名为test01的数据库,输入语句如下:

drop database test01;

2.3.2 “增删改查”表空间

  数据表是数据库中最基本也是最重要的操作对象,是数据存储的基本单位。由于MySQL属于结构化数据库,因此其所存储的数据表也多为结构化数据表,即按照行和列的格式进行存储。
(1)创建表空间
MySQL中创建数据表的基本SQL语法格式为:

create table table_name( column_name1 column_type );

【例】在test01数据库中,创建一张名为stu_inf的学员信息表,表结构如下:

字段名称 数据类型 备注
id int(10) 学员编号
stu_name varchar(20) 学员姓名
stu_sex varchar(20) 学员性别
stu_score float(10) 学员成绩

括号+数字表示字段长度,可以想象成在Excel表格中设置列宽,但由于部分数据类型有默认字段长度,若无特殊需求也可以省略,例如int(10)可以直接写int。
输入语句如下:

想要对数据表进行操作,首先得选择一个数据库,因此我们在创建表空间前,应该使用use database_name语句指定数据库,否则会出现No database selected的错误。

MySQL创建数据表注意事项:
1.同一数据库中表名称不能重复;
2.创建的表名称,不区分大小写,不能使用SQL语言中drop、alter等关键字;
3.数据表中每一个字段名必须配上相应的数据类型;
MySQL数据类型:
问题A:SQL中的数据类型是什么?
回答A:数据类型是数据的一种属性,它表示数据信息的类型。每张数据表都包含一个到多个字段,每个字段由字段名和数据类型组合而成,不同数据类型的存储及展现方式都有所不同。
问题B:SQL中的数据类型有哪些?
回答B:数据类型共3大类,包括数值型、字符型和日期型
数值型:int整数、float浮点数
字符型:char固定长度字符串、varchar可变长度字符串
日期型:datetime日期和时间组合,格式“YYYY-MM-DD hh:mm:ss”
更多详细数据类型可参考:MySQL数据类型详解
(2)查看表空间
  数据表创建好之后,我们可以使用SQL语句列出所有数据表的名称,也可以根据数据表名称,查看该表中所包含的字段及数据类型等详细信息,MySQL中查看表空间的基本SQL语法格式如下:
① 查看所有数据表名称
【例】查看test01数据库所有表名称,输入语句如下:

② 查看单个数据表结构
【例】查看表名为stu_inf的学员信息表,输入语句如下:

(3)修改表空间
  修改表指的是修改数据库中已经存在的数据表结构,MySQL支持多样化数据表修改操作,包括修改表名称、添加表中字段、修改表中字段、删除表中字段。MySQL中修改数据表的SQL语句全部以alter table作为开头,表示用户当前需要进行修改表的操作。
① 修改表名称

alter table table_name_old rename table_name_new; 

【例】将stu_inf学员信息表名称修改为student_inf,输入语句如下:

② 添加表中字段

alter table table_name add column column_name column_type;      

【例】在student_inf学员信息表中添加字段名为stu_class、数据类型为varchar(20)的字段,输入语句如下:

③ 修改表中字段

alter table table_name change column column_name_old column_name_new column_type_new;     

【例】修改student_inf学员信息表中stu_class字段,修改后的字段名为class、数据类型为char(20),输入语句如下:

④ 删除表中字段

alter table table_name drop column column_name;      

【例】删除student_inf学员信息表中class字段,输入语句如下:

(4)删除表空间
MySQL中删除数据表的基本SQL语法格式为:

drop table table_name;

【例】删除test01数据库中,表名为student_inf的学员信息表,输入语句如下:

drop table student_inf;

删除数据表时,若该数据表作为父表被其他子表关联,则需要先删除子表后才能删除父表,父表与子表的概念将在下个章节中详细展开。

练习

(1)创建一个库名为test_stu的数据库;
(2)查看所有已存在的数据库;
(3)进入数据库test_stu;
(4)在test_stu数据库中,创建emp_inf员工信息表,表结构如下:

表 emp_inf员工信息表
字段名称 数据类型 备注
id int(10) 员工编号
e_name varchar(20) 员工姓名
e_age int(10) 员工年龄
e_sex varchar(20) 员工性别

分类: 数据库技术