MySQL数据库的基本操作
一、MySQL查看数据库
在 MySQL 中,可使用 SHOW DATABASES 语句来查看或显示当前用户权限范围以内的数据库。查看数据库的语法格式为:
SHOW DATABASES;
SHOW DATABASES [LIKE '数据库名'];
/*
语法说明如下:
LIKE 从句是可选项,用于匹配指定的数据库名称。LIKE 从句可以部分匹配,也可以完全匹配。
数据库名由单引号' '包围。
*/
二、配合使用 LIKE 从句
先创建三个数据库,名字分别为 test_db、db_test、db_test_db。
1、使用 LIKE 从句,查看与 test_db 完全匹配的数据库:
SHOW DATABASES LIKE 'test_db';
2、使用 LIKE 从句,查看名字中包含 test 的数据库:
SHOW DATABASES LIKE '%test%';
3、使用 LIKE 从句,查看名字以 db 开头的数据库:
SHOW DATABASES LIKE 'db%';
4、使用 LIKE 从句,查看名字以 db 结尾的数据库:
SHOW DATABASES LIKE '%db';
三、创建数据库
在 MySQL 中,可以使用 CREATE DATABASE 语句创建数据库,语法格式如下:
CREATE DATABASE [IF NOT EXISTS] <数据库名>
[[DEFAULT] CHARACTER SET <字符集名>]
[[DEFAULT] COLLATE <校对规则名>];
实例1:最简单的创建 MySQL 数据库(名称为 :test_db)的语句
mysql> CREATE DATABASE test_db;
or
mysql> CREATE DATABASE IF NOT EXISTS test_db;
.
实例2: 创建 MySQL 数据库(名称为 :test_db_char)时指定字符集 (utf8) 和校对规则 { utf8_chinese_ci(简体中文,不区分大小写)}
mysql> CREATE DATABASE IF NOT EXISTS test_db_char
-> DEFAULT CHARACTER SET utf8
-> DEFAULT CILLATE utf8_chinese_ci;
四、MySQL修改数据库:ALTER DATABASE用法简介
在 MySQL 数据库中只能对数据库使用的字符集和校对规则进行修改,数据库的这些特性都储存在 db.opt 文件中。
在 MySQL 中,可以使用 ALTER DATABASE 来修改已经被创建或者存在的数据库的相关参数。修改数据库的语法格式为:
ALTER DATABASE [数据库名] {
[ DEFAULT ] CHARACTER SET <字符集名> |
[ DEFAULT ] COLLATE <校对规则名>}
使用命令行工具将数据库 test_db 的指定字符集修改为 gb2312,默认校对规则修改为 gb2312_unicode_ci ,并展示:
mysql> ALTER DATABASAE test_db
-> DEFAULT CHARACTER SET gb2312
-> DEFAULT COLLATE gb2312_chinese_ci;
mysql> SHOW CREATE DATABASE test_db;
五、删除数据库(DROP DATABASE)
在 MySQL 中,当需要删除已创建的数据库时,可以使用 DROP DATABASE 语句。其语法格式为:
DROP DATABASE [ IF EXISTS ] <数据库名>
使用命令行工具将数据库 test_db_del 从数据库列表中删除:
mysql> DROP DATABASE test_db_del;
//or
mysql> DROP DATABASE IF EXISTS test_db_del; //防止重复删除报错
六、MySQL选择数据库(MySQL USE语句)
当用 CREATE DATABASE 语句创建数据库之后,该数据库不会自动成为当前数据库,需要用 USE 来指定当前数据库。其语法格式为:
USE <数据库名>
使用命令行工具将数据库 test_db 设置为默认数据库,输入的 SQL 语句与执行结果如下所示:
mysql> USE test_db;
Database changed
七、MySQL注释
1、 MySQL单行注释:
#注释符 & --注释符(后加空格)
#从结果中删除重复行
SELECT DISTINCT product_id, purchase_price FROM Product;
//or
-- 从结果中删除重复行
SELECT DISTINCT product_id, purchase_price FROM Product;
2、MySQL多行注释
/* */注释符
/*
这条SELECT语句,
会从结果中删除重复行
*/
SELECT DISTINCT product_id, purchase_price FROM Product;
八、MySQL中SQL语句的大小写规则
下表总结了 SQL 元素在 Windows 和 Linux 系统是否区分大小写:
想要避免大小写问题,可以先选定一种大小写方案,然后一直按照该方案去创建数据库和表。
MySQL 在 Windows 系统下不区分大小写,但在 Linux 系统下默认区分大小写。因此,数据库名、表名和字段名,都不允许出现任何大写字母,避免节外生枝。
一般建议统一使用小写字母,并且 InnoDB 引擎(是MySQL的数据库引擎之一,现为MySQL的默认存储引擎)在其内部都是以小写字母方式来存储数据库名和表名的。这样可以有效的防止 MySQL 产生大小写问题。
九、查看MySQL系统帮助
在 MySQL 中,查看帮助的命令是 HELP,语法格式如下:
HELP 查询内容
*其中,查询内容为要查询的关键字。
*查询内容中不区分大小写。
*查询内容中可以包含通配符“%”和“_”,效果与 LIKE 运算符执行的模式匹配操作含义相同。例如,HELP 'rep%' 用来返回以 rep 开头的主题列表。
*查询内容可以使单引号引起来,也可以不使用单引号,为避免歧义,最好使用单引号引起来。
1)查询帮助文档目录列表
mysql> HELP'contents';
2)查看具体内容
mysql> HELP 'Data Types';
mysql> HELP 'INT';
3)查看某命令
mysql> HELP 'CREATE TABLE'
拓展
MySQL 提供了 4 张数据表来保存服务端的帮助信息,即使用 HELP 语法查看的帮助信息。执行语句就是从这些表中获取数据并返回给客户端的,MySQL 提供的 4 张数据表如下:
help_category: 关于帮助主题类别的信息
help_keyword: 与帮助主题相关的关键字信息
help_relation: 帮助关键字信息和主题信息之间的映射
help_topic: 帮助主题的详细内容
十、SQL错误代码
1、MySQL服务器端错误代码和消息
默认情况下,服务器出错代码都是以 1 开头的;
例如“1004 SQLSTATE: HY000 (ER_CANT_CREATE_FILE)”,该消息的错误代码为 1004,表示“无法创建文件”。
2、MySQL客户端错误代码和消息
默认情况下,客户端出错代码都是以 2 开头的;
例如错误代码为 2025(CR_PROBE_MASTER_CONNECT)的,表示连接到主服务器时出错。
3、常见错误代码
常见的服务器错误代码及说明如下表所示:
常见的客户端错误代码及说明如下所示: