结构化查询语言(SQL)是一种数据库查询和程序设计语言
SQL语句按其功能分为4类:
SQL语句 | 英文名称 | 英文简称 | 功能(定义) | 常见命令 |
---|---|---|---|---|
数据定义语言 | Data Definition Language | DDL | 创建、修改或删除数据库中表、视图、索引等对象的操作 | create、alter、drop |
数据查询语言 | Data Query Language | DQL | 按照指定的组合、条件表达式或排序检索已存在的数据库中的数据,不改变数据库中数据 | select |
数据操纵语言 | Data ManipulationLanguage | DML | 向表中添加、删除、修改数据的操作 | insert、update、delete |
数据控制语言 | Data Control Language | DCL | 用来授予或收回访问数据库的某种特权、控制数据操纵事务的发生时间及效果,对数据库进行监视等操作 | grant(权限)、revoke(撤销)、commit(提交)、rollback(回滚) |
需要注意的几点就是:
- SQL语句可以单行书写,也可以多行书写(有很多SQL语句一起执行时,每个sql语句都应以分号结尾);
- SQL语句通常使用空格和缩进以此来增强语句的可读性;
- SQL语句不区分大小写,建议关键字大写(例如:SELECT * FROM user)
(这里之所以建议大写,是因为sql语句在提交后,会自动将关键字的小写变成大写,如果提前就写大写,可以提升代码的性能,不过效果不是很大;而且由于我们中国人的习惯,大写一般都看不懂,必须翻译成小写才能知其义,所以这个大写不大写的无所谓); - SQL语句使用/**/或#进行注释;
- 为规避SQL关键字,可以为关键字添加反单引号(点击Tab键上面的按键);
下面让我们来看一下如何操作数据库:
#创建数据库 (tet,test为数据库名)
create database tet character set utf8
#切换数据库
use test
#查看正在使用的数据库
select database()
#查看所有的数据库
show databases
#删除数据库
drop database tet
#添加数据
insert into student (id,`name`,mobile,address) values ('1','Tom','182','郑州')
#修改数据
update student set `name`='Jim',mobile='157',address='北京' where id = '1'
#查询数据
select id,`name`,mobile,address from student where id = '1'
#创建一个新表back
create table back(
id char(3),
`name` varchar(18),
mobile char(11)
)
#将student中的一些数据传到back表里(备份)
insert into back (id,`name`,mobile) select id,`name`,mobile from student
#删除数据
delete from student where id = '1'
#删除表
drop table back