引文:
結構化查詢語言(Structured Query Language),是一種特殊目的的編程語言,是一種數據庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系數據庫系統;同時也是數據庫腳本文件的擴展名。
一、DCL ---數據控制語句,通過GRANT或REVOKE獲得許可,確定單個用戶和用戶組對數據庫對象的訪問。
二、DDL ---數據定義語言,在數據庫中創建新表或刪除表(CREAT TABLE 或 DROP TABLE);為表加入索引等。
三、DQL ---數據查詢語言,用以從表中獲得數據,確定數據怎樣在應用程序給出。
四、DML ---數據操作語言,分別用於添加,修改和刪除表中的行。
五、TPL ---事務處理語言,確保被DML語句影響的表的所有行及時得以更新。
六、CCL ---指針控制語言,用於對一個或多個表單獨行的操作。
一、DCL
1、創建用戶:
create user 用戶名 identified by 密碼;
2、解鎖用戶:
alter user 用戶名 account unlock;
鎖定用戶:
alter user 用戶名 account lock;
3、刪除用戶:
drop user 用戶名
級聯刪除
drop user 用戶名 cascade
4、分配權限或角色
grant privileges /roles to user
撤銷權限或角色
revoke privileges /roles from user
5、創建表空間
create tablespace 名字
datafile:存儲路徑
size:空間大小
autoextend on next 32M maxsize unlimited //自動增長 每次32M 最大大小無限制
二、DDL
1、建表
create table 表名(
列名1 數據類型 約束
列名2 數據類型 約束
......
)
2、修改表
1)追加一列
alter table 表名
add(列名 數據類型 )
2)修改現有的列
alter table 表名
modify(列名 數據類型 )
3)刪除一列
alter table 表名
drop column (列名)
3、刪除表
drop table 表名
注:數據和表的結構都會被刪除
三、DQL
基本結構:
select 字段列表 from 表名 where 查詢條件
查詢所有字段
select * from 表名 where 查詢條件
sql中的運算符:
1、算數運算符
+ - * /
2、比較運算符
= 等於
>大於
>=大於等於
<小於
<=小於等於
<> 不等於
between...and 在。。之間,包含邊界
in
like 模糊查詢 兩個通配符%%表示任意字符
is null 是否為空
3、邏輯運算符
and 與
or 或
not 非
4、空值
用nvl函數處理
nvl(a,b) 當a不為空時,結果為a,當a為空時,結果為b
nvl2(a,b,c) 當a不為空,返回b,否則,返回c
5、as 給列名和表名稱指定別名
eg. 表的別名
select id from student as list1;
列的別名
select name as show from student;
6、連接符 ||
把列和列,列和字符連接在一起
select ename||job from emp
7、字符串
日期和字符用單引號 括起來
8、重復的行
默認情況下,查詢會返回重復行
去除重復行
select distinct id from student;
9、分組
select * from student group by gender;
10、排序
select * from order by id;
11、having
對輸出結果進行限制
eg、 select name ,sum(sales) from store group by name having sum(sales)>1500;
四、DML
1、增
insert into 表名(列名1,列名2.。。。)
values
(值1,值2.。。。)
2、改
update table
set 列名 =值
where 條件
3、刪
delete [from] 表名
where 表達式
