一、數據定義語言: 1、用於改變資料庫結構,包括創建、更改和刪除資料庫對象; 2、命令: create table :創建 alter table 修改 drop table 刪除表 truncate table 刪除表數據(不可以回滾) 2、創建表: 3、修改表結構: alter 表名 add/m ...
一、數據定義語言:
1、用於改變資料庫結構,包括創建、更改和刪除資料庫對象;
2、命令:
create table :創建
alter table 修改
drop table 刪除表
truncate table 刪除表數據(不可以回滾)
2、創建表:
-- 創建表
create table sclass(
cid int primary key,
cname varchar(10)
)
create table java (
ssid int primary key, -- 主鍵約束
sname varchar2(20) unique, -- 唯一約束
ssex char(5) check(ssex in ('男','女')),--檢查約束,檢查輸入的是否是男或者女
sbirth date not null, -- 非空約束
saddress varchar2(50) default '淄博',-- 預設值約束
--score double check(score between 0 and 100), -- 檢查約束的範圍寫法
cid int,
constraint fk_student_class foreign key(cid) references sclass(cid) --設置外鍵
)
3、修改表結構:
alter 表名 add/modify/drop(增加/修改/刪除)列名 類型名/約束
4、截斷:
truncate table 表名;
-- 將表中的所有記錄全部刪除,但保留表結構,並且不寫日誌;
-- truncate 是DDL語言,
delete from 表名 是DML語言;
5、刪除表:drop
6、數據完整性:
可靠性 + 準確性 = 數據完整性
根據數據完整性機制所作用的資料庫對象和範圍的不同,數據完整性可分為以下四種類型:
①、實體完整性:唯一約束、主鍵約束;
②、域完整性:限制數據類型、檢查約束、預設值、非空約束;
③、參照完整性(引用完整性):外鍵約束;
④、自定義完整性:規則、存儲過程
約束實現數據完整性:
創建表:保證數據的完整性 = 實施完整性約束
二、數據操作語言:
數據操作語言:
檢索、插入和修改數據(增 insert、刪delete、改update、查select)
insert into java values(1,'張三','男',to_date('1997-02-22','yyyy-mm-dd'),'濟南');
日期類型 使用
to_date
--複製表(表不存在)--只複製表結構,不複製表數據(因為1=2,不成立) create table student as select * from java where 1=2; select * from student; --複製表結構和表內容、不複製約束 create table student2 as select * from java; select * from student2; --插入來自其他表中的數據(select前可以加from) insert into student select * from java; select * from student;
三、事務控制語言:
1、事務是最小的工作單元,作為一個整體進行工作
2、保證事務的整體成功或失敗,稱為事務控制;
3、用於事務控制的語句有:
commit:提交並結束事務處理;
rollback:撤銷事務中已完成的工作;
savepoint:標記事務中可以回滾的點;
四、數據控制語言:
1、數據控制語言為用戶提供許可權控制語言;
2、命令:
grant:授予許可權;
revoke:撤銷已授予的許可權;
--創建用戶 create user yym identified by 123456; grant connect, resource to yym;--授予許可權 --登錄管理員的賬戶,給用戶yym設置能訪問scott.emp表的許可權(只能查看) grant select on scott.emp to yym with grant option; select * from scott.emp; --管理員撤銷yym的訪問剛纔那個表的許可權 revoke select on scott.emp from yym;