Oracle學習筆記之 表結構修改

2022-03-08 14:23:03 字數 2668 閱讀 6087

--

獲取交集,也就是獲取重複的記錄

select

*from

employee

intersect

select

*from

employee;

--獲取工資最高的前三條記錄

select

*from

(select

row_number() 

over

( order

bywage 

desc

) as

rownumber,

name,wage 

from

employee) 

astemp

where

rownumber

<=3--

--oracle基本操作學習筆記----

--1、oracle 中null處理函式:nvl()和nvl2()

--nvl(expr1,expr2):如果expr1=null,擇則返回expr2,否則返回expr1

--nvl2(expr1,expr2,expr3):如果expr1非null,擇返回expr2,否則返回expr3

--sql server中用isnull(expr1,expr2)函式處理與nvl(expr1,expr2)相同

--2、修改列名

--oracle: rename column命令

alter

table

table_name rename 

column

old_column_name 

tonew_column_name 

--sql server: sp_rename 儲存過程

--type值:database,object,column,index,userdatatype

sp_rename 

'databasename.tablename.columnname',

'new_column_name',

'type'--

3、修改列資料型別

--oracle:modify關鍵字

alter

table

table_name modify column_name datatype

--sql server:alter column關鍵字

alter

table

table_name 

alter

column

column_name datatype

--4、新增和刪除列

--oracle與sql server一樣

--新增column

alter

table

table_name 

addcolumn

column_name datatype

--刪除column

alter

table

table_name 

drop

column

column_name 

--5、修改表ming

--oracle:

alter

table

table_name rename 

tonew_table_name

rename table_name 

tonew_table_name

--sql server:與修改列名一樣,設定type=objec即可

sp_rename 

'databasename.tablename',

'new_table_name',

'object'--

6、複製表建立新錶

--oracle:

create

table

table_name

asselect

...--

如果只複製表結構可以讓select 結果集為空

--sql server:

select

column_list 

into

new_table_name 

from

table_name

--7、約束

--約束:not null、unique、check、primary key、foreign key、default

--oracle與sql server除了foreign key 有點不同外,其餘用法都一樣

--oracle 級聯約束

ondelete

setnull

--:指定字表外來鍵對應設定為空

ondelete

cascade

--:級聯刪除時字表中對應的記錄

--sql server級聯選項

ondelete

no action /on

update

no action 

--預設選項

ondelete

cascade/on

update

cascade

ondelete

setnull/on

update

setnull

ondelete

setdefault/on

update

setdefault

Oracle學習 之 表空間

question 表空間是什麼,為什麼引入,有什麼用?表空間是oracle 11g對資料庫檔案的稱呼,可把它看作表駐留的空間。為了合理管理業務資料 索引資料 臨時資訊及回退資訊,需要建立不同型別的表空間。簡化對資料檔案的管理 1 概念 表空間是資料庫的邏輯儲存空間,可以理解為在資料庫中開闢的乙個空間...

oracle學習筆記之包

定義乙個包,包裡面包含乙個儲存過程 update emp,和乙個函式sp fun2 create or replace package sp package1 is procedure update emp names varchar2,nums number function sp fun2 na...

oracle學習筆記之開山

接觸oracle也有一段時間了,但是還沒有系統的學習,總感覺有很多知識沒掌握到位,接下來的一段時間下班後將會有些許空閒時間,打算利用這段時間系統的學習一下oracle,本部落格僅為自己學習的筆記,如果能幫到您,我將會感到特別的榮幸,如有不對之處,也歡迎指出。不積跬步無以至千里,所以打算從最基礎部分開...