数据库基本概念
数据库(DataBase)是按照数据结构来组织、存储和管理数据的仓库,是存储在一起的相关数据的集合。
-
减少数据的冗余度,节省数据的存储空间
-
具有较高的数据独立性和易扩充性
-
实现数据资源的充分共享
数据库相关的几个概念:
数据库系统
数据库管理系统
关系数据库
表、字段、索引、视图、存储过程
在MySQL的数据库中,表、视图、存储过程和索引等具体存储数据或对数据进行操作的实体都被称为数据库对象。下面介绍几种常用的数据库对象。
表:表是包含数据库中所有数据的数据库对象,由行和列组成,用于组织和存储数据。
字段:表中每列称为一个字段。
索引:索引是一个单独的、物理的数据库结构。
视图:视图是从一张或多张表中导出的表(也称虚拟表),是用户查看数据表中数据的一种方式。
存储过程:存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集合(包含查询、插入、删除和更新等操作)。
创建数据库
通过CREATE DATABASE语句创建基本数据库 通过CREATE SCHEMA语句创建基本数据库 创建指定字符集的数据库 创建数据库前判断是否存在同名数据库
方式一
通过CREATE DATABASE语句创建一个名称为db_admin的数据库
![](https://img.haomeiwen.com/i11875313/e6a05874316b2461.png)
查看数据库:
show databases;
默认数据库: mysql - 用户权限相关数据
test - 用于用户测试数据
information_schema - MySQL本身架构相关数据
performance_schema - 主要用于存储数据库服务性能参数
方式二
CHEMA语句创建一个名称为db_admin1的数据库
![](https://img.haomeiwen.com/i11875313/0901875661c63c76.png)
创建指定字符集的数据库
在创建数据库时,如果不指定其使用的字符集或者是字符集的较对规则,那么将根据my.ini文件中指定的default-character-set变量的值来设置其使用的字符集
![](https://img.haomeiwen.com/i11875313/bd60b545d2729574.png)
![](https://img.haomeiwen.com/i11875313/b5063076d546926b.png)
注意:在MySQL中,不允许同一系统中存在两个相同名称的数据库,如果要创建的数据库名称已经存在,那么系统将给出以下错误信息: ERROR 1007 (HY000): Can't create database 'db_name(数据库名称)'; database exists
创建数据库前,判断数据库是否存在,不存在则创建
CREATE DATABASE IF NOT EXISTS 数据库名称
![](https://img.haomeiwen.com/i11875313/78677568af56aeef.png)
选择数据
在MySQL中,使用CREATE DATABASE语句创建数据库后,该数据库并不会自动成为当前数据库。如果想让它成为当前数据库,需要使用MySQL提供的USE语句来实现,USE语句可以实现选择一个数据库,使其成为当前数据库。只有使用USE语句指定某个数据库为当前数据后,才能对该数据库及其存储的数据执行操作。 USE语句的语法格式如下:
USE 数据库名 (选择数据库)
![](https://img.haomeiwen.com/i11875313/58cfb883a2033c0a.png)
出现Database changed 表示成功选择了数据库
查看当前所在数据库
select database();
查看当前数据库编码格式
show variables like 'character_set_database';
修改数据库
在MySQL中,创建一个数据库后,还可以对象其进行修改,不过这里的修改是指可以修改被创建数据库的相关参数,并不能修改数据库名。修改数据库名不能使用这个语句。修改数据库可以使用ALTER DATABASE或者ALTER SCHEMA语句来实现。
修改数据库的语句的语法格式如下:
ALTER {DATABASE | SCHEMA} [数据库名] [DEFAULT] CHARACTER SET [=] 字符集 | [DEFAULT] COLLATER [=] 较对规则名称
![](https://img.haomeiwen.com/i11875313/2306b74e53fedc4c.png)
删除数据库
在MySQL中,可以通过使用DROP DATABASE语句或者DROP SCHEMA语句来删除已经存在的数据库。使用该命令删除数据库的同时,该数据库中的表,以及表中的数据也将永久删除,因此,在使用该语句删除数据库时,一定要小心,以免误删除有用的数据库。
DROP DATABASE或者DROP SCHEMA语句的语法格式如下: DROP {DATABASE|SCHEMA} [IF EXISTS] 数据库名;
DROP DATABASE 数据库名称;
当我们使用上面的命令删除数据库,如果指定的数据库不存在,将产生如图所示的异常信息。
为了解决这一问题,可以在DROP DATABASE语句中使用IF EXISTS从句来保证只有当数据库存在时才执行删除数据库的操作。
DROP DATABASE IF EXISTS 数据库名称;
网友评论