Oracle代码

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\user>color F4

C:\Documents and Settings\user>set oracle_sid=orcl

C:\Documents and Settings\user>sqlplus sys/ADMIN as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期六 12月 3 18:04:04 2011

Copyright (c) 1982, 2005, Oracle. All rights reserved.


连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> set serveroutput on

//用户自定义的异常
SQL> select empno,ename comm from scott.emp;

EMPNO COMM
---------- ----------
7369 SMITH
7499 ALLEN
7521 WARD
7566 JONES
7654 MARTIN
7698 BLAKE
7782 CLARK
7788 SCOTT
7839 KING
7844 TURNER
7876 ADAMS

EMPNO COMM
---------- ----------
7900 JAMES
7902 FORD
7934 MILLER

已选择14行。


SQL> declare
2 var_comm number;
3 begin
4 select comm into var_comm
5 from scott.emp
6 where ename='TURNER';
7 if var_comm=0 then
8 raise zero_divide;
9 end if;
10 exception
11 when zero_divide then
12 dbms_output.put_line('补贴费为0');
13 end;
14 /
补贴费为0

PL/SQL 过程已成功完成。

//序列(完成自动编号的功能)
//创建序列
SQL> create sequence seq2
2 increment by 1
3 start with 5
4 maxvalue 100
5 minvalue 1
6 nocycle;

序列已创建。

SQL> create table region(id number,region_name varchar2(2)) tablespace users;

表已创建。

//删除表
SQL> drop table region;

表已删除。

SQL> create table region(id number,region_name varchar2(12)) tablespace users;

表已创建。

SQL> insert into region values(seq2.nextval,'Asia');

已创建 1 行。

SQL> insert into region values(seq2.nextval,'China');

已创建 1 行。

SQL> insert into region values(seq2.nextval,'Idia');

已创建 1 行。

SQL> select * from region;

ID REGION_NAME
---------- ------------
7 Asia
8 China
9 Idia

SQL> alter sequence seq2 increment by 3;

序列已更改。

SQL> insert into region values(seq2.nextval,'America');

已创建 1 行。

SQL> insert into region values(seq2.nextval,'Japan');

已创建 1 行。

SQL> select * from region;

ID REGION_NAME
---------- ------------
7 Asia
8 China
9 Idia
12 America
15 Japan

SQL> drop sequence seq2;

序列已删除。

SQL> drop table region;

表已删除。

//第十章:表空间
SQL> select tablespace_name from dba_tablespaces;

TABLESPACE_NAME
------------------------------
SYSTEM
UNDOTBS1
SYSAUX
TEMP
USERS
EXAMPLE

已选择6行。

//建立普通表空间
SQL> create tablespace space01
2 datafile'd:\space01.dbf'
3 size 5m

4 extent management local;

表空间已创建。


SQL> create tablespace space02
2 datafile'd:\space02.dbf'
3 size 5m
4 extent management local autoallocate;

表空间已创建。

SQL> create tablespace space03
2 datafile'd:\space03.dbf'
3 size 5m
4 extent management local uniform;

表空间已创建。

//本地管理表空间的存储方式
//创建一个具有手动存储方式的表空间
SQL> create tablespace space04
2 datafile'd:\space04.dbf'
3 size 5m
4 extent management local uniform size 512
5 segment space management manual;

表空间已创建。

//建立大文件的表空间
SQL> select * from database_properties
2 where property_name='DEFAULT_TBS_TYPE';

PROPERTY_NAME
------------------------------
PROPERTY_VALUE
--------------------------------------------------------------------------------

DESCRIPTION
--------------------------------------------------------------------------------

DEFAULT_TBS_TYPE
SMALLFILE
Default tablespace type


SQL> column PROPERTY_NAME format a20;
SQL> column PROPERTY_NAME format a20
SQL> column PROPERTY_VALUE format a20
SQL> column description format a25

SQL> select * from database_properties
2 where property_name='DEFAULT_TBS_TYPE';

PROPERTY_NAME PROPERTY_VALUE DESCRIPTION
-------------------- -------------------- -------------------------
DEFAULT_TBS_TYPE SMALLFILE Default tablespace type

SQL> alter database set default smallfile tablespace;

数据库已更改。


SQL> create bigfile tablespace big_tbs
2 datafile 'd:\bigfile_tbs.dbf'
3 size 5m;

表空间已创建。

SQL> select tablespace_name,bigfile from dba_tablespaces;

TABLESPACE_NAME BIG
------------------------------ ---
SYSTEM NO
UNDOTBS1 NO
SYSAUX NO
TEMP NO
USERS NO
EXAMPLE NO
SPACE01 NO
SPACE02 NO
SPACE03 NO
SPACE04 NO
BIG_TBS YES

已选择11行。

SQL> show parameter db_block_size;

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_block_size integer 8192

//创建临时表空间
SQL> create temporary tablespace temp02
2 tempfile'd:\temp02.dbf'
3 size 4m
4 extent management local uniform size 256k;

表空间已创建。

//建立大文件的临时表空间
SQL> create bigfile temporary tablespace big_temp03
2 tempfile'd:\big_temp03.dbf'
3 size 4m;

表空间已创建。

//建立非标准块表空间
SQL> alter system set db_16k_cache_size=20m;

系统已更改。

SQL> create tablespace big_block_tbs
2 datafile 'd

:\big_block_tbs01.dbf'
3 size 2m blocksize 16k;

表空间已创建。

SQL> select tablespace_name,block_size
2 from user_tablespaces;

TABLESPACE_NAME BLOCK_SIZE
------------------------------ ----------
SYSTEM 8192
UNDOTBS1 8192
SYSAUX 8192
TEMP 8192
USERS 8192
EXAMPLE 8192
SPACE01 8192
SPACE02 8192
SPACE03 8192
SPACE04 8192
BIG_TBS 8192

TABLESPACE_NAME BLOCK_SIZE
------------------------------ ----------
TEMP02 8192
BIG_TEMP03 8192
BIG_BLOCK_TBS 16384

已选择14行。

SQL> drop tablespace space01;

表空间已删除。

//创建一个临时表空间
SQL> create temporary tablespace mytemp01 tempfile'd:\mytempol.dbf' size 2m;

表空间已创建。

SQL> column name format a50
SQL> select file#,status,name from v$tempfile;

FILE# STATUS NAME
---------- ------- --------------------------------------------------
1 ONLINE C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP01.DBF
2 ONLINE D:\MYTEMPOL.DBF

SQL> create temporary tablespace mytemp02 tempfile'd:\mytempo2.dbf' size 2m tabl
espace group group1;

表空间已创建。

SQL> alter tablespace mytemp01 tablespace group group2;

表空间已更改。

SQL> select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME
------------------------------ ------------------------------
GROUP2 MYTEMP01
GROUP1 MYTEMP02

SQL> alter tablespace mytemp01 tablespace group group1;

表空间已更改。

SQL> select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME
------------------------------ ------------------------------
GROUP1 MYTEMP01
GROUP1 MYTEMP02

SQL> alter tablespace mytemp01 tablespace group '';

表空间已更改。

SQL> select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME
------------------------------ ------------------------------
GROUP1 MYTEMP02

SQL> select file#,status,name from v$tempfile;

FILE# STATUS NAME
---------- ------- --------------------------------------------------
1 ONLINE C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP01.DBF
2 ONLINE D:\MYTEMPOL.DBF
3 ONLINE D:\MYTEMPO2.DBF

SQL> drop tablespace mytemp02 includeing contents and datafiles;

SQL> select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME
------------------------------ ------------------------------
GR

OUP1 MYTEMP02
//查表空间
SQL> create tablespace space01 datafile'd:\space01.dbf' size 2m extent managemen
t local;

表空间已创建。
//修改表空间状态属性
SQL> alter tablespace space01 offline normal;

表空间已更改。

SQL> select tablespace_name,status from dba_tablespaces;

TABLESPACE_NAME STATUS
------------------------------ ---------
SYSTEM ONLINE
UNDOTBS1 ONLINE
SYSAUX ONLINE
TEMP ONLINE
USERS ONLINE
EXAMPLE ONLINE
MYTEMP01 ONLINE
MYTEMP02 ONLINE
SPACE01 OFFLINE

已选择9行。

SQL> create table a(X number) tablespace space01;

ORA-01542: 表空间 'SPACE01' 脱机, 无法在其中分配空间


SQL> alter tablespace space01 online;

表空间已更改。

SQL> select tablespace_name,status from dba_tablespaces;

TABLESPACE_NAME STATUS
------------------------------ ---------
SYSTEM ONLINE
UNDOTBS1 ONLINE
SYSAUX ONLINE
TEMP ONLINE
USERS ONLINE
EXAMPLE ONLINE
MYTEMP01 ONLINE
MYTEMP02 ONLINE
SPACE01 ONLINE

已选择9行。

SQL> create table a(X number) tablespace space01;

表已创建。

SQL> insert into a values (1 |2| 3);

SQL> commit;

提交完成。
//设置表空间
SQL> select default_tablespace from user_users;

DEFAULT_TABLESPACE
------------------------------
SYSTEM

SQL> create table b(X number);

表已创建。

SQL> drop table b;

表已删除。
SQL> select property_name,property_value from databas_properties
2 where property_name in
3
SQL> select property_name,property_value from database_properties
2 where property_name in
3 ('DEFAULT_PERMANENT_TABLESPACE','DEFAULT_TEMP_TABLESPACE');

PROPERTY_NAME
-------------------------
PROPERTY_VALUE
--------------------------------------------------------------------------------

DEFAULT_TEMP_TABLESPACE
TEMP

DEFAULT_PERMANENT_TABLESP
ACE
USERS


SQL> column property_name format a30
SQL> column property_name format a25
SQL> select property_name,property_value from database_properties
2 where property_name in
3 ('DEFAULT_PERMANENT_TABLESPACE','DEFAULT_TEMP_TABLESPACE');

PROPERTY_NAME
-------------------------
PROPERTY_VALUE
--------------------------------------------------------------------------------

DEFAULT_TEMP_TABLESPACE
TEMP

DEFAULT_PERMANENT_TABLESP
ACE
USERS
//删除表空间
SQL> alter database default tablespace users;

数据库已更改。
SQL> alter database default temporary tablespace temp;

SQL> select tablespace_name,sum(bytes)/1024/1024

free_MB
2 from dba_free_space group by tablespace_name;

TABLESPACE_NAME FREE_MB
------------------------------ ----------
UNDOTBS1 8.25
SYSAUX 1.4375
SPACE01 1.875
USERS 1.8125
SYSTEM 5.8125
EXAMPLE 22.3125

已选择6行。
//列出数据文件、表空间以及大小。
SQL> column file_name format a52
SQL> column tablespace_name format a12
SQL> select file_name,tablespace_name,
2 round(bytes/1024000)MB from dba_data_files
3 order by file_name;

FILE_NAME TABLESPACE_N MB
---------------------------------------------------- ------------ ----------
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBF EXAMPLE 102
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF SYSAUX 246
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF SYSTEM 492
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBF UNDOTBS1 36
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBF USERS 5
D:\SPACE01.DBF SPACE01 2

已选择6行。

SQL> select b.tablespace_name,
2 sum(b.bytes)/1024/1024 total_MB,
3 sum(a.bytes)/1024/1024 free_MB,
4 round(sum(a.bytes)/sum(b.bytes)*100,1) free_total
5 from dba_free_space a,dba_data_files b
6 where a.file_id=b.file_id
7 group by b.tablespace_name;

TABLESPACE_N TOTAL_MB FREE_MB FREE_TOTAL
------------ ---------- ---------- ----------
UNDOTBS1 1400 10.625 .8
SYSAUX 240 1.4375 .6
SPACE01 2 1.875 93.8
USERS 5 1.8125 36.3
SYSTEM 480 5.8125 1.2
EXAMPLE 300 22.3125 7.4

已选择6行。
//修改表空间大小
SQL> alter tablespace myspace01
2 add datafile'd:\space02.dbf' size 10m;


SQL> alter database datafile'd:\space01.dbf' resize 26m;

数据库已更改。
SQL> create tablespace space03
2 datafile'd:\space03.dbf' size 2m
3 autoextend on next 2m
4 maxsize 30m extent management local;

表空间已创建。

SQL> alter database
2 datafile'd:\space01.dbf' autoextend on next 512k
3 maxsize 30m;

数据库已更改。

SQL> alter database
2 datafile'd:\space01.dbf' autoextend off;

数据库已更改。









相关文档
最新文档