一、SQL结构化查询语言
1、什么是SQL?
SQL,英文全称Structured Query Language,中文意思是结构化查询语言,它是一种对关系数据库中的数据进行定义和操作的语言方法。
2、SQL的分类
SQL结构化查询语言包含6个部分:
1)数据查询语言(DQL):
DQL全称Data Query Language,其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用。
mysql> select user,host,password from mysql.user order by user asc; +------+-----------------------+-------------------------------------------+ | user | host | password | +------+-----------------------+-------------------------------------------+ | | localhost | | | | localhost.localdomain | | | root | localhost | *8B27C4BCAD7F539091156319763740D798B44466 | | root | localhost.localdomain | | | root | 127.0.0.1 | | | root | ::1 | | +------+-----------------------+-------------------------------------------+ 6 rows in set (0.11 sec) mysql> select user,host,password from mysql.user order by user desc; +------+-----------------------+-------------------------------------------+ | user | host | password | +------+-----------------------+-------------------------------------------+ | root | localhost | *8B27C4BCAD7F539091156319763740D798B44466 | | root | localhost.localdomain | | | root | 127.0.0.1 | | | root | ::1 | | | | localhost | | | | localhost.localdomain | | +------+-----------------------+-------------------------------------------+ 6 rows in set (0.00 sec)
2)数据操作语言(DML)
DML全称Data Manipulation Language,其语句包括动词INSERT,UPDATE和DELETE。它们分别用于添加,修改和删除表中的行(数据)。也称为动作查询语言。具体语句例如: delete from mysql.user where user=‘root’ and host=‘127.0.0.1’;
3)事务处理语言(TPL)
它的语言能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括KEGIN TRANSACTION,COMMIT和ROLLBACK。
4)数据控制语言(DCL)
DCL全称(Data Control Language),它的语句通过GRANT或REVOKE获得许可,确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。
5)数据定义语言(DDL)
全称,(Data Definition Language),其语句包括动词CREATE和DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。DDL包括许多与人数据库目录中获得数据有关的保留字。它也是动作查询的一部分。
6)指针控制语言(CCL)
全称CURSOR Control Language,它的语句,像DECLARE CUROR,FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作。
小结:SQL语句最常见的分类一般是3类:
DDL——数据定义语言(CREATE,ALTER,DROP)—————————运维
DML——数据操纵语言(SELECT,INSERT,DELETE,UPDATE)———开发
DCL——数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)——运维
二、MySQL数据库常见管理应用
1、创建数据库
命令语法:create database <数据库名> <=注意库名不能数据开头
在MySQL默认字符集情况下建立数据库测试如下:
a.建立一个名为oldboy的数据库
mysql> create database oldboy; Query OK, 1 row affected (0.00 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | oldboy | | performance_schema | | test | +--------------------+ 5 rows in set (0.00 sec) mysql> show create database oldboy \G *************************** 1. row *************************** Database: oldboy Create Database: CREATE DATABASE `oldboy` /*!40100 DEFAULT CHARACTER SET latin1 */ 1 row in set (0.00 sec)
b.建立一个名为oldboy_的GBK字符集数据库
mysql> create database oldboy_gbk DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci; Query OK, 1 row affected (0.11 sec) mysql> show create database oldboy_gbk \G *************************** 1. row *************************** Database: oldboy_gbk Create Database: CREATE DATABASE `oldboy_gbk` /*!40100 DEFAULT CHARACTER SET gbk */ 1 row in set (0.00 sec)
c.建立一个名为oldboy_utf8的UTF8数据库
mysql> create database oldboy_utf8 CHARACTER SET utf8 COLLATE utf8_general_ci; Query OK, 1 row affected (0.00 sec) mysql> show create database oldboy_utf8 ; +-------------+----------------------------------------------------------------------+ | Database | Create Database | +-------------+----------------------------------------------------------------------+ | oldboy_utf8 | CREATE DATABASE `oldboy_utf8` /*!40100 DEFAULT CHARACTER SET utf8 */ | +-------------+----------------------------------------------------------------------+ 1 row in set (0.00 sec)
d.创建不同字符集格式的数据库命令
原文:https://www.cnblogs.com/cnxy168/p/11572876.html