0
点赞
收藏
分享

微信扫一扫

MySQL10--数据库设计

数据库设计

什么是数据库

数据库(DatabASe,DB)是按照特定数据结构来组织、存储和管理数据的仓库;
数据库其实就是一个容器,它由表、视图、索引、触发器、存储过程、用户等对象组成,这些对象称为数据库对象;
所以在使用这些对象之前,必须先行创建数据库;

数据定义语言:DDL

数据库操作:​​CREATE​​​、​​DROP​

数据表操作:​​CREATE​​​、​​DROP​​​、​​ALTER​

创建数据库

创建数据库通过CREATE DATABASE语句实现,其语法是:

CREATE DATABASE [ IF NOT EXISTS ]  db_name [CREATE_specificatiON]

CREATE_specificatiON语法是:

[DEFAULT] CHARACTER SET [=] CHARset_name

说明:
如果要创建数据库,需要拥有数据库CREATE权限;
如果数据库存在,且没有指定IF NOT EXISTS,则会出现错误;
CREATE_specificatiON选项用于指定数据库的特性;
数据库特性储存在数据库目录中的db.opt文件中;

一般字符编码集有GBK、UTF8

创建数据库演示

创建数据库testdb,编码方式由MySQL配置文件决定

CREATE DATABASE testdb;

创建数据库testdb,并且指定编码方式为GB2312

CREATE DATABASE testdb DEFAULT CHARACTER SET GB2312;

创建数据库时可能产生的错误

CREATE DATABASE testdb; 
ERROR 1007 (HY000): Can't CREATE database 'testdb'; database exists
错误原因:同名数据库已经存在而导致无法创建数据库;

创建数据库tsd2102,并且指定编码方式为UTF8,并验证数据库是否创建成功

CREATE DATABASE tsd2102 CHARACTER SET UTF8;

SHOW DATABASES;

创建数据库testing,并且指定编码方式为GBK,并验证数据库是否创建成功

CREATE DATABASE testing CHARACTER SET GBK;

SHOW DATABASES;

查看数据库列表

SHOW DATABASES语句的语法是:

SHOW DATABASES [ LIKE '模式' | WHERE 表达式 ]

-- 显示当前服务器下的所有数据库 
SHOW DATABASES;

-- 显示当前服务器下所有以字符t开头的数据库 
SHOW DATABASES LIKE 't%';

-- 显示当前服务器下所有第二个字符为e的数据库 
SHOW DATABASES LIKE '_e%';

-- 显示当前服务器下所有第二个字符为e的数据库 
SHOW DATABASES LIKE `DatabASe` LIKE '_e%';

-- 查看testing数据库信息
SHOW CREATE DATABASE testing;

-- 查看tsd2102数据库信息
SHOW CREATE DATABASE tsd2102;

打开数据库

打开数据库的语法是:

USE  数据库名称

-- 选择数据库 
USE testdb;

-- 显示当前数据库 
SELECT DATABASE();

-- 选择testing数据库
USE testing;

-- 选择tsd2102数据库
USE tsd2102;``

查看数据库创建命令

查看数据库创建命令语法如下:

SHOW CREATE DATABASE  [ IF NOT EXISTS ] db_name

查看数据库testdb创建
SHOW CREATE DATABASE IF NOT EXISTS testdb;

+------------+-------------------------------------------------------------------------------------------------------------------------------------+
| DatabASe | CREATE DatabASe |
+------------+-------------------------------------------------------------------------------------------------------------------------------------+
| testdb | CREATE DATABASE /!32312 IF NOT EXISTS/ ​​tcms​​​ /*!40100 DEFAULT CHARACTER SET utf8 */ |
+------------+-------------------------------------------------------------------------------------------------------------------------------------+

修改数据库

修改数据库的语句是:

ALTER DATABASE db_name [DEFAULT] CHARACTER SET [=] CHARset_name

-- 修改数据库编码 
ALTER DATABASE testdb CHARACTER SET gb2312;

删除数据库

删除数据库的语句是:

DROP DATABASE [ IF EXISTS ] db_name

-- 删除数据库db1 
DROP DATABASE testdb;

删除数据库时可能产生的错误

ERROR 1008 (HY000): Can't DROP databASe 'testdb'; databASe doesn't exISt
错误原因:因为数据库不存在而导致无法删除;

综合练习

-- 创建一个数据库,名称为tmooc,字符编码集是UTF8,并验证数据库是否创建成功
CREATE DATABASE tmooc CHARACTER SET UTF8;
SHOW DATABASES;
-- 查看数据库tmooc信息
SHOW CREATE DATABASE tmooc;
-- 使用tmooc数据库
USE tmooc;
-- 删除tmooc数据库,并验证
DROP DATABASE tmooc;
SHOW DATABASES;

举报

相关推荐

0 条评论