Oracle常用SQL語句大全

2022-01-11 19:00:56 字數 4279 閱讀 1748

常用oracle資料庫sql語句彙總。

1、常用操作

--清空**站

purge recyclebin;

--查詢**站

select * from recyclebin

--查詢oracle版本資訊

select * from v$version

--查詢oracle資料庫字符集

select userenv('language') from dual

--清除表資料的2種方法

①delete from t

②truncate table t

區別: 

①delete是dml操作;truncate是ddl操作,ddl隱式提交不能回滾

②delete from t可以回滾,truncate table t 不可以回滾

③ truncate table t 執行效率更高,會**表空間,delete from t執行效率慢,不會**表空間

④truncate table t高水線下降,delete from t高水線不降(這個不太明白...)自增id,truncate後從1開始,delete後還是接著自增

--刪除表

drop

table t; --

刪除後會進入**站

--徹底刪除表

drop table tb_maintence purge;

在oracle中,當刪除乙個表時,oracle並沒有真正刪除該錶,而是把該錶重新命名,然後扔到**站中,使用purge命令來清空**站,將會釋放表占用的空間,把這些空間返回給表空間,成為表空間中的自由空間。

一旦空間吃緊,oracle會自動清空**站中的物件。在oracle清空前,可以找回被刪除的物件,就是把被刪除的物件從**站中撿回來,即所謂的閃回技術

從**站中還原被刪除的表instructor

flashback table instructor to before drop

還原並重命名該錶

1 flashback table instructor to before drop rename to instructor_restore;

使用desc命令檢視表instructor_restore是否已經撿回。

oracle 資料庫桌面類與伺服器類的區別:

桌面類――這種安裝方式一般適用於台式電腦和筆記本。它包含乙個最小資料庫和最低的配置需求。

伺服器類――這種安裝方式適用於伺服器,例如,它會向您提供資料中心和用於支援企業級的應用程式。如果您需要使用高階配置選項,請選擇此安裝型別。

在桌面類中,只有基本選擇項。

在伺服器類,可以選擇標準安裝(僅讓您作有基本選擇)或高階安裝。

在桌面類或典型安裝中,oracle資料庫將自動安裝示例庫。

綜上,選擇了桌面類,更適合於個人使用,不能進行不同機器的遠端訪問,也就是別人不能連線你的資料庫。

伺服器類當然是提供oracle資料庫服務了,還包括監聽服務,用於接收客戶端的連線。

客戶端提供了一套工具,包括開發使用的庫檔案、標頭檔案,類似於informix裡面的client sdk, 還是一些實用工具,如sqlplus。客戶端負責和伺服器通訊。

關於sql server資料庫與oracle資料庫的區別:

oracle:oracle database。甲骨文公司的一套  關聯式資料庫  管理系統。

優點:    可移植性好,使用方便,適用於大、中、小、微型環境。

sql server: 美國microsoft公司推出的一種 關係型 資料庫。    

兩者的區別:

(1)操作平台不同

oracle資料庫採用開放的策略目標,它使得客戶可以選擇一種最適合他們特定需要的解決方案。客戶可以利用很多種第三方應用程式、工具。而sql server卻只能在windows上執行了。

但sql sever在window平台上的表現,和windows作業系統的整體結合程度,使用方便性,和microsoft開發平台的整合性都比oracle強的很多。但windows作業系統的穩定性及可靠性大家是有目共睹的,再說microsoft公司的策略目標是將客戶都鎖定到windows平台的環境當中,只有隨著windows效能的改善,sql server才能進一步提高。從操作平台這點上oracle是完全優勝於sql server的了。

也就是說oracle支援多種作業系統,sql server支援windows系統

(2)檔案體系結構不同

oracle:

資料檔案 .dbf(真實資料)

日誌檔案 .rdo

控制檔案 .ctl

引數檔案 .ora

sql server:

.mdf (資料字典)

.ndf (資料檔案)

.ldf (日誌檔案)

(3)儲存結構不同

oracle儲存結構:

在oracle裡有兩個塊引數pctfree(填充因子)和pctused(復用因子),可控制塊確定塊本身何時有,何時沒有足夠的空間接受新資訊(對塊的儲存情況的分析機制)

這樣可降低資料行連線與行遷移的可能性。塊的大小可設定(oltp塊和dss塊)

在oracle中,將連續的塊組成區,可動態分配區(區的分配可以是等額的也可以是自增長的)可減少空間分配次數

在oraclel裡表可以分為多個段,段由多個區組成,每個段可指定分配在哪個表空間裡(段的型別分為:資料段、索引段、回滾段、臨時段、cash段。oracle裡還可對錶進行分割槽,可按照使用者定義的業務規則、條件或規範,物理的分開磁碟上的資料。

這樣大大降低磁碟爭用的可能性。

oracle有七個基本表空間:

·system表空間(存放資料字典和資料管理自身所需的資訊)

·rbs回滾表空間

·temp臨時表空間

·tools互動式表空間

·users使用者預設表空間

·indx索引表空間

·dbsys福資料表空間

不同的資料分別放在不同的表空間(資料字典與真實資料分開存放),在oracle里基表(儲存系統引數資訊)是加密儲存,任何人都無法訪問。只能通過使用者可視檢視檢視。

sql server 儲存結構:

以頁為最小分配單位,每個頁為8k(不可控制,缺乏對頁的儲存情況的分析機制),可將8個連續的頁的組成乙個『擴充套件』,以進一步減少分配時所耗用的資源。(分配缺乏靈活性),在sql server裡資料以表的方式存放,而表是存放在資料庫裡。

sql server有五個基本資料庫:

·master(資料字典)

·mode(存放樣版)

·tempdb(臨時資料庫)

·msdb(存放排程資訊和日誌資訊)

·pubs(示例資料庫)

真實資料與資料字典存放在一起。對系統引數資訊無安全機制。

(4)安全性

oracle的安全認證獲得最高認證級別的iso標準認證,而sql server並沒有獲得什麼安全認證。這方面證明了oracle的安全性是高於sql server的。

(5)效能方面

sql server 多使用者時效能不佳

oracle 效能最高, 保持windowsnt下的tpc-d和tpc-c的世界記錄。

(6)開放性

sql server 只能在windows 上執行,沒有絲毫的開放性,作業系統的系統的穩定對資料庫是十分重要的。windows9x系列產品是偏重於桌面應用,nt server只適合中小型企業。而且windows平台的可靠性,安全性和伸縮性是非常有限的。它不象unix那樣久經考驗,尤其是在處理大資料量的關鍵業務時。

oracle 能在所有主流平台上執行(包括 windows)。完全支援所有的工業標準。採用完全開放策略。可以使客戶選擇最適合的解決方案。對開發商全力支援。

(7)客戶端支援及應用模式

sql server c/s結構,只支援windows客戶,可以用ado,dao,oledb ,odbc連線.

oracle 多層次網路計算,支援多種工業標準,可以用odbc, jdbc,oci等網路客戶連線

pl/sql developer匯入10萬條以上大量資料技巧:

從開發環境的oracle資料庫給你匯出幾十萬條資料,每條資料是insert語句,用於插入到測試環境oracle資料庫,

開啟匯出的資料檔案data.sql,複製到pl/sql中,可能直接就卡死了;

可以通過命令方式執行data.sql檔案:在pl/sql developer中,檔案 -- 新建 -- 命令視窗,

在命令視窗中輸入@,後面接data.sql的絕對路徑,比如:@d:\data.sql,然後回車,然後就開始迴圈插入了。

但是比較耗時間。

oracle常用sql語句

1.解鎖oracle使用者下某個使用者 以內建的scott使用者為例 sql conn as sysdba sql alter user scott account unlock identified by tiger 解釋 首先要切換到sysdba使用者下,否則會提示 許可權不足 error at...

oracle常用SQL語句

最近專案中用到,現記錄一下 新增主鍵 alter table shop spec detail add constraint spec detail id primary key id 新增索引 create index spec detail id on shop spec detail id 給...

Oracle常用SQL語句

今天接到乙個新任務 任務的主要內容簡單點說就是乙個下拉框,乙個查詢條件,乙個 table 顯示。當聽完的時候感覺真的是很簡單,這樣的事情也並非沒有做過。但是當靜下心來仔細分析需求,則會發現其與眾不同之處。1 下拉框中顯示的是我們整個模組的表名稱 2 查詢條件初步設想是根據時間查詢 3 table 第...