MySQL基础之SQL基础1
一、SQL简介
# 当面对一个陌生的数据库时,通常需要一种方式与它进行交互,以完成用户所需的各种工作。
# 这个时候,就要用到 SQL 语言了。
# 由于 SQL 语言的标准化,所以大多数关系型数据库系统都支持 SQL 语言,它已经发展成为多种平台进行交互操作的底层回话语言。
二、SQL 分类
DDL 语句
# 数据定义语言,这些语句定义了不同的数据段,数据库、表、列、索引等数据对象。
# 常用的语句关键字主要包括create、drop、alter等。
DML 语句
# 数据操纵语句,用于添加、删除、更新和查询数据库记录,并检查数据完整性。
# 常用的语句关键字主要包括 insert、delete、update 和 select 等。
DCL 语句
# 数据控制语句,用于控制不同数据段直接的许可和访问级别的语句。
# 常用的语句关键字主要包括 grant、revoke 等
三、DDL 语句操作实例
简单来说,DDL 就是对数据库内部的对象进行创建、删除、修改等操作的语言。
1.创建数据库
-- 启动 MySQL 服务之后,输入以下命令连接到 MySQL 服务器:
$ mysql -uroot -p
-- 接着输入密码,就可以登录数据库了
-- 在以上命令行中,mysql 代表客户端命令, “-u” 后面跟连接的数据库用户,“-p” 表示需要输入密码
-- 所有的数据都存储在数据库中,因此需要学习的第一个命令是创建数据库
mysql> create database test1;
-- 如果需要知道系统中都存在哪些数据库,可以用以下命令
mysql> show databases;
-- 在查看系统中已有的数据库后,可以用如下命令选择要操作的数据库:
-- 例如,选择数据库 test1:
mysql> use test1
-- 然后再用下列命令来查看 test1 数据库中创建的数据表:
mysql> show tables;
2.删除数据库
-- 删除数据库的语法很简单
-- 例如,要删除 test1 数据库可以使用以下语句:
mysql> drop database test1;
3.创建表
-- 因为 MySQL 的表名是以文件的形式保存在磁盘上,所有表名的字符可以用任何文件名允许的字符。
-- 例如,创建一个名称为 emp 的表。表中包括 ename(姓名)、hiredate(雇用日期)和 sal(薪水)3个字段,字段类型分别为 varchar(10)、date、int(2):
mysql> create table emp(ename varchar(10),hiredate date,sal decimal(10,2),deptno int(2));
-- 表创建完毕,需要查看 emp 表
mysql> desc emp;
-- 为了得到更全面的表定义信息,有时候需要查看创建表的 SQL 语句,可以使用如下命令:
mysql> show create table emp \G;
4.删除表
-- 要删除数据库 emp 可以使用以下命令:
mysql> drop table emp;
5.修改表
在大多数情况下,表结构的更改都使用 alter table 语句。
a.修改表类型
-- 修改表 emp 的ename 字段定义,将varchar(10)改为 varchar(20):
mysql> desc emp;
mysql> alter table emp modify ename varchar(20);
mysql> desc emp;
b.增加表字段
-- 在表 emp 中新增加字段 age,类型为int(3):
mysql> desc emp;
mysql> alter table emp add column age int(3);
mysql> desc emp;
c.删除表字段
-- 将字段 age 删除掉:
mysql> desc emp;
mysql> alter table emp drop column age;
mysql> desc emp;
d.字段改名
-- 将 age 改名为 age1,同时修改字段类型为int(4);
mysql> desc emp;
mysql> alter table emp change age age1 int(4);
mysql> desc emp;
e.修改字段排列顺序
-- 将新增的字段 birth date 加在 ename 之后:
mysql> desc emp;
mysql> alter table emp add birth date after ename;
mysql> desc emp;
-- 修改字段 age1,将它放在最前面:
mysql> desc emp;
mysql> alter table emp modify age1 int(3) first;
mysql> desc emp;
f.更改表名
-- 将表 emp 改名为 emp1
mysql> show tables;
mysql> alter table emp rename emp1;
mysql> show tables;
参考书籍
-- 书名: 深入浅出MySQL --数据库开发、优化与管理维护(第3版)
-- 作者:翟振兴 崔春华 黄荣 董骐铭
标签:语句,SQL,--,数据库,MySQL,基础,emp,mysql,desc
From: https://blog.51cto.com/u_14483476/6221257