一、與MySql的工作模式的區別
1、 一個MySql數據庫有多個數據庫,一個數據庫有多個表
2、一個服務器通常只有一個數據庫,一個數據庫中有多個用戶,一個用戶管理多個表
二、檢驗是否安裝成功
1、自動的工具
用戶名/密碼
如
/
scott/tiger
2、win+roracle用戶授權表空間,運行窗口輸入cmd
在控制臺輸入,然后按照提示輸入賬號和密碼
三、基礎操作
1、解鎖已經存在的內置賬戶
alter user 賬戶名 ;
如:alter user scott ;
2、新增用戶
/*
創建用戶
(1)密碼如果是關鍵字or數字開頭,需要用雙引號包裹起來
(2)非dba用戶,會提示 ,權限不足
*/
user scott by ""
3、給新增的用戶授權
-- 授權(和兩個權限,還有一個dba權限,沒有授予)
grant , to scott;
四、常用數據類型
1、數值類型 (長度,小數位數)
(7,2)
代表整數5位,小數2位
2、字符類型 (長度),最大長度為4000
3、日期類型 date 年月日時分秒
年月日時分秒,還可以精確毫秒
五、創建表&添加注釋&添加數據
和mysql類型,但是沒有
名稱 是否為空? 類型
----------------------------------------- -------- ---------------------------
(部門id) NOT NULL (2)
DNAME (名稱) (14)
LOC (地址) (13)
table dept(
(2) not null key ,
dname (14),
loc (13)
);
-- 添加注釋
on dept. is '部門id';
on dept.dname is '部門名字';
on dept.loc is '地址';
名稱 是否為空? 類型
----------------------------------------- -------- ---------------------------
EMPNO(員工id) NOT NULL (4)
ENAME (名字) (10)
JOB (職務) (9)
MGR (上一級的id) (4)
(入職日期) DATE
SAL (薪水) (7,2)
COMM(津貼) (7,2)
(部門id) (2)
-- 員工表
table emp(
empno (4) not null key,
ename (10),
job (9),
mgr (4),--職務
date,
sal (7,2),
comm (7,2),
(2)
);
-- 添加注釋
on emp.empno is '員工id';
on emp.ename is '員工名字';
on emp.job is '職務';
on emp.mgr is '上一級id';
on emp. is '入職日期';
on emp.sal is '薪水';
on m is '津貼';
on emp. is '部門id';
2、查看表結構
desc 表名;
desc dept;
3、插入數據
INTO "DEPT" ("", "DNAME", "LOC") (10, '', 'NEW
YORK');
六、常見約束
(一)主鍵約束
唯一確定每一條記錄的唯一性和完整性,
值不能重復,不能為空,
可以是一列,也可以是多列(聯合主鍵)
(二)外鍵約束
確定和建立兩個表的關系
主表的主鍵,是從表的外鍵
(三)非空約束
設置定義的列不能為空
(四)檢查約束
對輸入的值進行檢查,約束和限制字段的值
(五)唯一約束
必須唯一,防止該列的值出現重復
添加約束的三種形式:
1、直接在建表的表字段后添加約束
2、直接在建表的最后添加約束
約束名 約束的條件
3、建表之后再添加(不建議)
table (
sid (8) not null key,-- 主鍵約束
tel (15),--唯一約束
-- (tel)
sex char(2) check(sex='男' or sex='女'),--檢查約束
-- check(sex='男' or sex='女')
(4) class(cid), --外鍵約束
-- 外鍵名字 key 外鍵 主表(主鍵) [] 級聯,例題如下
-- key class(cid)
);
-- 建表之后添加約束
alter table
add check(sex='男' or sex='女')
七、T-SQL語言
1、DDL數據庫定義語言
操作對象(表)
常用操作:、drop、ALTER
2、DML數據操作語言
操作對象(表數據/記錄)
常用操作:、、、
3、DCL數據控制語言
操作對象(數據庫對象)
常見操作:grant(授權)、(回收)
4、TCL事務控制語言
事務:一條或多條sql語句組成一個執行單位,一組sql語句要么都執行要么都不執行
隱式(自動)事務:沒有明顯的開啟和結束,本身就是一條事務可以自動提交oracle用戶授權表空間,比如、、
顯式事務:具有明顯的開啟和結束
使用顯式事務的步驟:
①開啟事務
set =0;
start ;#可以省略
②編寫一組邏輯sql語句
注意:sql語句支持的是、、
設置回滾點:
回滾點名;
③結束事務
提交:;
回滾:;
回滾到指定的地方: to 回滾點名;
(1) 提交事務
(2) 回滾事務
(3) 保存現場
(4) TO 回滾到現場