Oracle PL SQL語句塊的使用

2021-08-20 20:29:54 字數 3709 閱讀 5720

oracle

database,又名

oracle

rdbms,或簡稱

oracle

。是甲骨文公司的一款關聯式資料庫管理系統。

5.1 建立資料檔案大小20m的表空間

> create tablespace usertbs1 datafile

'd:\tmp\usertbs1.dbf' size 20m;

5.2 區定製分配

> create tablespace usertbs1 datafile

'd:\tmp\usertbs1.dbf' size 20m

extent management local uniform size 512k;

5.3 每次自動擴充套件1m,最大值為100mb

> alter database datafile

'd:\tmp\usertbs1.dbf'

autoextend on next 1m maxsize 100m;

5.4 建立臨時表空間

> create temporary tablespace temptbs tempfile

'd:\tmp\temptbs.dbf' size 20m

extent management local uniform size 10m;

/*設定當前預設表空間*/

> alter database default tablespace temptbs;

5.5 對錶空間聯機離線

> alter tablespace usertbs1 offline;

> alter tablespace usertbs1 online;

5.9 為表空間新增資料檔案

> alter tablespace usertbs1 add datafile

'd:\tmp\users05.dbf' size 50m;

5.12 資料檔案更名

> alter tablespace usertbs1 offline;

手動改資料檔案名為 users005.dbfs

> alter tablespace usertbs1 rename datafile

'd:\tmp\users05.dbf' to

'd:\tmp\users005.dbf';

> alter tablespace usertbs1 online;

5.14 新增重做日誌組,包含redo5a.log和redo5b.log,大小為5mb

> alter database add logfile group 4

('d:\tmp\redo5a.log', 'd:\tmp\redo5b.log')

size 5m;

5.15 新增日誌檔案成員

> alter database add logfile member

'd:\tmp\redo5c.log' to group 4;

5.16 切換歸檔模式且自動歸檔

> shutdown immediate

> startup mount

> alter database archivelog;

> alter database open;

5.17 設定資料庫歸檔路徑

> alter system set db_recovery_file_dest="d:\oracle\backup";

6.2 建表

> create table exer_class(

cno number(2) primary key,

cname varchar(20),

num number(3)

);> create table exer_studnet(

sno number(4) primary key,

sname varchar(10) unique,

sage number,

*** char(2),

cno number(2)

);6.3 新增檢查約束

> alter table exer_studnet add

constraint s_ck check (sage between 0 and 100);

6.4 取值為m或f,預設m

> alter table exer_studnet add

constraint ***_ck check(*** in ('m','f'));

> alter table exer_studnet modify *** default 'm';

6.5 建立唯一索引

> create unique index class_name_index on exer_class(cname);

6.6 建立檢視

> create view cl_stu_view as

select c.cno, c.cname, s.sno, s.sname from exer_class c, exer_studnet s

where s.cno=c.cno;

6.7 建立序列

> create sequence no_seq start with 100000001 increment by 1 nocache nocycle;

6.8 **分割槽

> create tablespace example datafile

'd:\tmp\example.dbf' size 50m;

> create tablespace orcltbs1 datafile

'd:\tmp\orcltbs1.dbf' size 50m;

> create tablespace orcltbs2 datafile

'd:\tmp\orcltbs2.dbf' size 50m;

> create table exer_student_range(

sno number(4) primary key,

sname varchar(10) unique,

sage number,

*** char(2),

cno number(2)

)partition by range(sage)(

partition p1 values less than (20) tablespace example,

partition p2 values less than (30) tablespace orcltbs1,

partition p3 values less than (maxvalue) tablespace orcltbs2

);6.9 按性別分割槽

> create table exer_student_list(

sno number(4) primary key,

sname varchar(10) unique,

sage number,

*** char(2),

cno number(2)

)partition by list(***)(

partition male values('m') tablespace orcltbs1,

partition female values('f') tablespace orcltbs2

);6.10 本地分割槽索引

> create index student_local on exer_student_range(sage) local;

Oracle PL SQL 語句塊用法

set serveroutput on begin update scott.emp set sal 800.00 where empno 7369 if sql found then dbms output.put line 表已更新 else dbms output.put line 表沒有更新...

Oracle 「PL SQL語句實驗(1)」

1 宣告乙個記錄變數emp record 將emp表所有成員放入變數中,列印編號為7788的員工名稱和工資資訊。declare emp record emp rowtype begin select into emp record from emp where empno 7788 dbms out...

Oracle PL SQL語言基礎 控制語句

預定義異常種類 異常處理 異常說明 access into null 在未初始化物件時出現 case not founf 在case 語句中的選項與使用者輸入的資料不匹配時出現 collection is null 在給尚未初始化的表或陣列賦值時出現 cursor already open 使用者試...