目录
4.1数据库的创建
4.1.1 创建数据库
使用CREATE DATABASE语句创建数据库,其基本语法格式如下:
CREATE DATABASE [ IF NOT EXISTS ] database_name
[ [ DEFAULT ] CHARACTER SET [=] charset_name
| [ DEFAULT ] COLLATE [=] collation_name ]
提示:
(1)SQL语句语法格式中“[ ]”表示其内容为可选项。
(2)SQL语句不区分大小写,为了便于理解,本课程中所有MySQL关键字均采用大写形式出现,其他自定义的名称均以小写形式出现。
【例1】创建school数据库。
【例2】创建xsgl数据库,指定字符集为utf8mb4,设置默认校对规则为utf8mb4_0900_ai_ci。
4.1.2 选择数据库
使用CREATE DATABASE语句成功创建数据库后,该数据库不会自动成为当前数据库,需要使用USE语句来指定。USE语句可以用来从一个数据库切换到另一个数据库,其基本语法格式如下:USE database_name
要操作某个数据库及其存储的数据库对象,必须先指定该数据库为当前数据库。
4.1.3. 查看数据库
(1)查看服务器中所有数据库
可以使用SHOW DATABASES语句查看MySQL服务器中已经存在的数据库,语法格式如下:
SHOW DATABASES (-- 只列出当前用户权限范围内所能查看到的所有数据库名称。 )
(2)查看数据库的创建信息
使用SHOW CREATE DATABASE语句可以查看指定数据库的创建信息,语法格式如下:
SHOW CREATE DATABASE database_name (-- 指定要查看的数据库名称)
4.1.4 修改数据库
数据库创建后,如果需要修改数据库的相关参数,可以使用ALTER DATABASE语句,其基本语法格式如下: (如果没有指定数据库名称,就是修改当前数据库)
ALTER DATEBASE [ database_name ]
[ [ DEFAULT ] CHARACTER SET [=] charset_name
| [ DEFAULT ] COLLATE [=] collation_name ]
【例】修改xsgl数据库的字符集为gbk,校对规则为 gbk_chinese_ci。
4.1.5 删除数据库
可以使用DROP DATABASE语句删除数据库,其基本语法格式如下:
DROP DATABASE [ IF EXISTS ] database_name
注意:使用DROP DATABASE语句会永久删除指定的数据库,包括数据库中所有的表和表中的数据,因此使用该语句要特别谨慎,在执行删除操作前应做好相应备份。
4.2表的创建与管理
4.2.1 创建数据表
创建数据表的SQL语句是CREATE TABLE,其基本语法格式如下:
CREATE TABLE [ IF NOT EXISTS ] table_name
(
column_name1 data_type [ column_constraint ]
[ , column_name2 data_type [ column_constraint ] ]
[ , … ]
[ , table_constraint ]
) [ ENGINE = engine_name ]
【例 1】在数据库school中创建学生表student。
【例 2】在数据库school中创建课程表course。
CREATE TABLE IF NOT EXISTS `course` (
`cno` char(5) NOT NULL COMMENT '课程编号',
`cname` varchar(15) NOT NULL COMMENT '课程名称',
`ctype` varchar(5) NULL COMMENT '课程类型',
`chour` tinyint(4) NULL COMMENT '学时',
`ccredit` decimal(2,1) NULL COMMENT '学分',
`cterm` tinyint(4) NULL COMMENT '开课学期'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='课程表';
4.2.2 查看数据表
(1)查看数据表
SHOW TABLES语句用于显示指定数据库中存放的所有数据表名,其基本语法格式如下:
SHOW [ FULL ] TABLES [ { FROM | IN } database_name ]
[ LIKE 'pattern' | WHERE expr ]
【例 3.11】 查看数据库school中已有的表。
(2)查看表的结构
DESCRIBE语句用于显示表中各列的信息。其基本语法格式如下:
{ DESCRIBE | DESC } table_name [ column_name ]
SHOW COLUMNS | FIELDS 语句的语法格式如下:
SHOW {COLUMNS | FIELDS} {FROM | IN} tbl_name [{FROM | IN} db_name]
【例】查看数据库school中学生表student的表结构。
4.2.3 修改数据表
ALTER TABLE命令可以用于更改原有表的结构。其基本语法格式如下:
ALTER TABLE table_name
ADD [ COLUMN ] column_name column_definition -- 用于向表中增加新列
[ FIRST | AFTER column_name ] -- 用于指定新增列在表中的位置。
-- 如果省略ÿ