大师网-带你快速走向大师之路 解决你在学习过程中的疑惑,带你快速进入大师之门。节省时间,提升效率

Mysql基础-数据库操作

前文索引:CentOS7 下安装 Mysql8

说明:在软件开发领域,对数据的操作是必不可少的一个环节,而对数据的存储就少不了数据库的使用,现阶段数据库可以分为两大类关系型数据库(RDBMS)和非关系型数据库(NoSql),接下来的系列将依Mysql为例,讲解关系型数据库的基本操作。

Mysql提供了几条数据库级别的语句:

1、USE : 用于选定一个默认数据库

2、CREATE DATABSE : 用于创建数据库

3、ALTER DATABSE : 用于更改数据库的全局信息

4、DROP DATABSE : 用于删除数据库

一、USE选择数据库:

使用USE语句可以选择数据库,并把它指定为Mysql服务器连接的默认(当前)数据库;

语法:USE db_name;

注意:

1、要选择数据库的前提条件是,你必须具备相应的访问权限,否则,会出现错误提示。

2、选择数据库的操作并不一定是必须的,在没有选择数据库的情况下,只要用数据库名来限定表名,就可以应用数据库中的表,如:

SELECT * FROM sampdb.user;

3、选择一个数据库并不意味着它就是此次会话期间的默认数据库,我们可以随时调用USE语句切换数据库。

二、CREATE DATABSE创建数据库:

使用CREATE DATABSE可以新建我们的数据库;

语法:CREATE DATABSE db_name;

完整语法:CREATE DATABSE [IF NOT EXISTS] db_name [CHARACTER SET charset] [COLLATE collation];

注意:

1、创建数据库的先决条件是,必须拥有CHARTE权限,这个数据库是不存在的

2、在默认条件下,我们创建一个已经存在的数据库,系统会报错,但我们可以通过扩充子句来规避这种错误,如:

CREATE DATABSEIF NOT EXISTS db_name;

3、默认情况下,服务器的字符集和排序规则将成为新建数据库的默认字符集和排序规则,但我们可以通过扩充子句CHARACTER SET COLLATE 来自定义,如:

CREATE DATABSEdb_nameCHARACTER SET utf8COLLATEutf8_lcelandic_ci;

4、如果只设定CHARACTER SET ,而没有设定COLLATE,则意味使用这个给定字符集的默认排序规则。如果只设定COLLATE,而没有设定CHARACTER SET,则意味着使用排序规则名字开头部分来确定字符集

5、所有前面提到的字符集必须是当前服务器所支持的

三、ALTER DATABSE修改数据库

当我们需要修改数据库全局属性时,可以通过ALTER DATABSE语句改变

语法:ALTER DATABSE [db_name] [CHARACTER SET charset] [COLLATE collation];

注意:

1、当前登陆用户必须拥有ALTER权限

2、如果省略db_name名字,那么ALTER DATABSE 会使用默认数据库(即:USE 选择数据库)

四、DROPDATABSE删除数据库:

当我们想要删除掉数据库时,可以通过DROPDATABSE语句操作

语法:DROPDATABSE db_name;

注意:

1、当前登陆用户必须拥有DROP权限

2、千万不要随便执行DROPDATABSE语句,它会删除掉数据库和启动所有内容(表、存储过程等)

3、一个数据库就是Mysql数据目录里的一个目录,这个目录主要用于存储对象、如表、视图、触发器等。如果执行DROPDATABSE失败,通常是因为那个数据库目录中包含了一些与数据库对象无关的文件,而DROPDATABSE不会删除这类文件,因而也就不会删除这个目录,想要真正删除这个数据库,此时,需要我们手动删除这类文件,然后执行DROPDATABSE语句