一、数据操作(DML)语句
1、插入语句
(1)语法一:insert into 表名(列名,...) values(值1,...) 或 insert into 表名 values(值1,...)
(2)语法二(批量插入):insert into 表名(列名,...) values(值1,...),(值1,...),(值1,...),(值1,...)...
(3)语法三(其他表中批量复制):insert into 表名1(列名,...) select 列名,... from 表2
2、修改语句
(1 )语法一:update 表名 set 列=新值,列=新值,... where 筛选条件
(2)语法二(多表修改):update 表1 别名 inner|left|right join 表2 别名 on 连接条件 set 列=值,... where 筛选条件
3、删除语句
(1)语法一(单表):delete from 表名 where 筛选条件
(2)语法二(关联删除单表):delete 表1的别名 from 表1 别名 inner|left|right join 表2 别名 on 连接条件 where 筛选条件
(3)语法二(关联删除多表):delete 别名1,别名2 from 表1 别名1 inner|left|right join 表2 别名2 on 连接条件 where 筛选条件
(4)语法三:truncate table tableName ---truncate删除不能回滚,delete删除可以回滚
4、查询语句
SELECT
*|{[DISTINCT] column|expression [alias],...}
FROM table1
inner|left|right join table2 on 连接条件
[WHERE condition(s)](条件过滤,紧随 FROM 子句)
[GROUP BY column|group_by_expression](根据一个或多个字段或某一表达式进行分组)
[HAVING group_condition](对分组的结果进行过滤)
[ORDER BY column1,column2... asc|desc](根据一个或多个字段进行排序,在SELECT语句的结尾(asc为默认值,为升序,desc为降序))
limit start,size(对查询的结果进行分页处理)
二、数据库、表(DDL)定义语句管理
1、数据库操作语句
(1)创建数据库:create database [if not exists] 库名
(2)修改数据库:ALTER DATABASE databaseName CHARACTER SET gbk
(3)删除数据库:drop database [ if exists ] 库名
2、表操作语句
(1)创建表结构
create table [if not exists] 表名(
列名 列的类型【(长度) 约束】,
列名 列的类型【(长度) 约束】,
列名 列的类型【(长度) 约束】,
...
列名 列的类型【(长度) 约束】
)
(2)表的修改:alter table 表名 add|drop|modify|change column 列名 【列类型 约束】;
(3)表的删除:DROP TABLE [IF EXISTS] tableName
3、视图的管理语句
(1)视图的创建
create [or replace] view view_name
As
查询语句;
(2)视图的修改
create [or replace] view view_name
As
查询语句;
或:
alter view view_name
as
查询语句
(3)视图的删除
drop view [if exists] view_name1,view_name2
视图的好处:
• 重用sql语句
• 简化复杂的sql操作,不必知道它的查询细节
• 保护数据,提高安全性
4、存储过程的管理
(1)创建存储过程语法
create procedure 存储过程名(参数列表)
BEGIN
存储过程体(一组合法的SQL语句)
END
注意:
1、参数列表包含三部分:参数模式 参数名 参数类型
如:in stuname varchar(20)
参数模式:
in:该参数可以作为输入,也就是该参数需要调用方传入值
out:该参数可以作为输出,也就是该参数可以作为返回值
inout:该参数既可以作为输入又可以作为输出,也就是该参数既需要传入值,又可以返回值
(2)删除存储过程
drop procedure [if exists] 存储过程名
(3)调用存储过程
call 存储过程名(实参列表)