oracle基本划水知識
1.oracle 是乙個資料庫管理系統
啟動***服務:lsnrctl start
啟動資料庫服務: net start oracleserviceorcl
邏輯結構:資料庫 –> 表空間 –> 資料段 –> 資料區間 –> 資料段
進入資料庫:sqlplus 使用者名稱/密碼
切換使用者:conn 使用者名稱/密碼
系統管理員:sqlplus / as sysdba
修改密碼:alter user 使用者名稱 indentify by 密碼
2.特點:
①支援多使用者
②資料安全性和完整性
③支援分布式資料處理
④具有可移植性
3.sql語言:
ddl 資料定義語言 dml 資料操縱語言 tcl 事務控制語言
dcl 資料控制語言
4.表空間:
表空間是資料庫邏輯結構的乙個重要元件
①目的:方便管理 可以將不同的資料檔案建立到不同的磁碟中
②語法:建立 create tablespace 表空間名 datafile 」 autoextend 【on/off】
刪除 drop tablespace name
5.自定義使用者管理
sys system scott/tiger
6.資料庫管理許可權
create user t146 identified by 123456;
grant connect,resource to t146;
grant all on scott.dept to t146;
grant all on scott.emp to t146;
①系統管理許可權
create session 連線到資料庫
create table 建立表
create view 建立檢視
create sequence 建立序列
②物件許可權
connect 連線資料庫 resource 可以建立表 觸發器 過程等 dba 資料庫管理員角色
賦予許可權:grant 許可權|角色 to 使用者名稱;
撤銷許可權:revoke 許可權|角色 from 使用者名稱;
7.序列
建立序列:
create sequence 序列名
[start with integer 生成第乙個序列號]
[increment by integer 序列號之間的間隔]
[maxvalue integer|nomaxvalue]
[minvalue integer|nominvalue]
[cycle 序列達到最大值或最小值後,將從頭開始生成值|nocycle]
[cache integer 預分配一組序列號,將其保留在記憶體中|nocache]
訪問序列:
nextval 第一次使用 返回該序列的初始值 用於增加序列值
currcal 返回序列的當前值
修改序列:
alter sequence 序列名
[increment by integer ]
[maxvalue integer|nomaxvalue]
[minvalue integer|nominvalue]
[cycle]
[cache integer ]
刪除序列:
drop sequence 序列名
使用序列
select 序列名 from ..
8.同義詞
相當於取別名 方便簡化sql語句
分類:
私有同義詞:
create synonym 同義詞名 for 表名
公有同義詞
create public synonym 同義詞名 for 表名
刪除同義詞
drop [public] synonym 同義詞名
私有同義詞與公有同義詞的區別:
私有同義詞只能在當前模式下訪問,且不能與當前模式的物件同名
公有同義詞可以被所有的資料庫使用者訪問
9.索引
分類:
b樹索引
create [unique] index 索引名 on 表名(列名)
反向鍵索引
create index 索引名 on 表名(列名) reverse
位圖索引
適用於每列的值很少的情況下
優點:①減少響應時間 ②占用空間明顯減少 ③效能提公升
create bitmap index 索引名 on 表名(列名)
刪除索引:
drop index 索引名
重建索引:
alter index 索引名 rebuild 索引型別
10.分割槽表:
分類:範圍分割槽 列表分割槽 雜湊分割槽 復合分割槽 間隔分割槽 虛擬列分割槽
範圍分割槽:
create table 表名(
… )
partiton by range (列)
( partiton 分割槽名 values less than (maxvalue ….);
); 間隔分割槽:
create table 表名(
… )
partiton by range (列)
interval( 分割槽 );
11.pl/sql
pl/sql是結合了oracle過程語言和結構化查詢語言的一種擴充套件語言
declare
變數名 資料型別 [:=值];
begin
語句段
end;
注釋:
單行注釋 – 多行注釋/**/
資料型別:
標量資料型別 lob資料型別 屬性型別
控制語句:
if語句:
if 條件表示式 then
end if;
case語句:
case 條件表示式
when 條件表示式結果 then
語句段when 條件表示式結果 then
語句段[else 語句段]
end case;
loop迴圈:
loop
要執行的語句;
exit when 條件語句
end loop;
for迴圈:
for 迴圈計數器 in [reverse] 下限..上限 loop
要執行的語句
end loop;
異常處理:
declare
變數名 資料型別 [:=值];
begin
語句段exception
when 異常情況 then
end;
12.游標:
方便資料在儲存過程的提取和資料的轉移
宣告游標
cursor 游標名 [(parameter,…)]
[return return_type] is 查詢語句
開啟游標
open 游標名[(parameter)]
提取游標
fetch 游標名 into 變數名
關閉游標
close 游標名
13.儲存過程:
建立儲存過程:
create [or replace] produre 儲存過程名 [引數列表]
[is|as]
[區域性宣告]
begin
可執行語句
end;
呼叫儲存過程:
exec 儲存過程名
儲存過程的訪問許可權:
grant execute on 儲存過程名 to 使用者名稱
revoke execute on 儲存過程名 from 使用者名稱 撤銷許可權
14.oracle與mysql的區別
①oracle是大型資料庫 mysql是小型資料庫
②oracle服務收費,mysql是開源的資料庫
③oracle支援大開發,大訪問量,是oltp最好的工具
④soracle占用空間較大,mysql占用較小
Oracle基礎知識
關於oracle的安裝過程這裡不再一一列出,網上有許多的安裝教程以及安裝過程所遇問題的解決辦法。通過學習所達到的目標如下 理解結構化查詢語句的作用 分類 理解select語句的作用 掌握選擇所有列 指定列 表示式 帶空值null 列別名 連線操作符 消除重複行的sql語句書寫方法。結構化查詢語言 s...
oracle基礎知識
1.檢視所有使用者 select from dba user select from all users select from user users 2.檢視使用者系統許可權 select from dba sys privs select from all sys privs select fr...
Oracle基礎知識
1.建立乙個和其他表結構相同的sql create table t ref as select from apas info create table t ref as select from apas info create table t as select from apas info ins...