相关概念
-
数据库:database,可以理解为一个文件夹,里面存放各种资源。
-
表:table,行:row 列:column
-
索引:index
-
视图:view
-
存储过程:procedure
-
存储函数:function
-
触发器:trigger
-
事件调度器:event scheduler,任务计划
-
用户:user
-
权限:privilege
SQL语法规范:
-
SQL指令不区分大小写(一般建议大写),例如:select、insert等
-
SQL语句默认以分号(;)结尾
-
关键词不能跨行书写,例如:不能把select这个指定分为两行来写
数据库命令规则
-
以字母开头,后续可以包括字母,数字和三个特殊字符(# _ $)
-
不能使用MySQL的保留字
SQL语句的分类
-
DDL: Data Defination Language 数据定义语言
CREATE,DROP,ALTER 创建、删除、修改资源 -
DML: Data Manipulation Language 数据操纵语言
INSERT,DELETE,UPDATE 插入、删除、更改
软件开发:CRUD -
DQL:Data Query Language 数据查询语言
SELECT -
DCL:Data Control Language 数据控制语言
GRANT,REVOKE -
TCL:Transaction Control Language 事务控制语言
COMMIT,ROLLBACK,SAVEPOINT
SQL语句构成
关健字(Keyword)组成子句(clause),多条字句(clause)组成语句
例如:
select * from products where price > 666
SELECT * #SELECT子句
FROM products #FROM子句
WHERE price>666 #WHERE子句
MySQL的字符集和排序规则
早期的数据库使用拉丁文字作为默认的字符集。存入其他文字就会出现乱码(从MySQL8.0开始默认字符集已经为 utf8mb4)
-
字符集:规定了文字的编码和解码的方式。
-
排序规则:数据涉及到排序需要按照什么样的规则来进行排序(每一个字符集都有默认的排序规则)
查看当前MySQL支持的字符集:
mysql> show character set; #或者 show charset;
更改MySQL默认使用的字符集:通过配置文件修改
- 修改服务端使用的默认字符集:
vim /etc/my.cnf
[mysqld] #mysqld语句块中改的就是服务端的字符集
character-set-server=utf8mb4 #MySQL配置文件中,认为下划线和横线是相同的
查看系统使用的默认字符集:
mysql> show variables like 'char%';
- 修改客户端默认使用的字符集:
#针对mysql客户端
[mysql] #mysql语句块就是针对客户端配置的
default-character-set=utf8mb4
#针对所有MySQL客户端
[client]
default-character-set=utf8mb4
注意:
- 服务端和客户端使用的字符集要保持一致。
查看MySQL的排序规则:
列出当前正在使用的排序规则: SHOW VARIABLES LIKE 'collation%'
mysql> SHOW VARIABLES LIKE 'collation%';
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)
#utf8_general_ci不区分大小写 --- ci结尾的就不区分大小写
#utf8_bin 区分大小写 --- bin结尾的就区分大小写
查看支持所有排序规则:SHOW COLLATION
标签:语句,mysql,基础,SQL,字符集,MySQL,排序 From: https://www.cnblogs.com/heyongshen/p/16667799.html