當前位置:首頁 » 編程語言 » oraclesql標准
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

oraclesql標准

發布時間: 2022-06-24 21:53:06

⑴ oracle是用什麼語言是sql語言嗎

不一樣的。

Oracle資料庫內核是用c編寫的,但是,大部分代碼是在資料庫中執行的,使用PL/SQL和Java(使用嵌入在內核中的jvm)開發。外圍工具(SQLDeveloper,grid控制項)主要使用Java。

MySQL是用C和c++編寫的。它的SQL解析器是用yacc編寫的,但是它使用一個定製的詞法分析器。MySQL可以在很多系統平台上工作。

(1)oraclesql標准擴展閱讀:

Oracle文件結構:

資料庫的物理存儲結構由多種物理文件組成,主要包括數據文件、控制文件、重做日誌文件、歸檔日誌文件、參數文件、密碼文件、警告文件等。

1.控制文件:存儲諸如實例、數據文件和日誌文件等信息的二進制文件。改變系統設置control_files='path'。VCONTROLFILE美元。

2.數據文件:存儲數據。DBF後綴。一個語句:一個表空間用於多個數據文件,一個數據文件用於一個表空間。Dba_data_files/v$丟失。

3.日誌文件:重做日誌文件和Archivelog文件。記錄資料庫修改信息。ALTER系統切換日誌文件;。V$日誌。

4.參數文件:記錄基本參數。Spfilepfile。

5.警告文件:顯示參數background_mp_dest——使用共享伺服器連接。

6.跟蹤文件:顯示參數user_mp_dest——使用專用伺服器連接。

⑵ oracle資料庫的基本語法與SQL一樣嗎

sql語句基本相同,各廠商有自己新加語句,相似功能不同實現方法,所以某些語句有不同。

⑶ 熟悉Oracle或SQLServer資料庫安裝,及基本的SQL語句的使用

Oracle與Sql server都遵循SQL-92標准:
區別如下:

1.Oracle中表名,欄位名,存儲過程名,變數名不能超過30個字元串長度。

2.Oracle中不支持Top 語法。使用whererownum < n 代替。但需要注意如果在Top前有排序的操作,則需要先排序在利用rownum取得。

3.Oracle中游標的使用與SqlServer中有挺大差別,主要是在循環控制方面不一致。

在Oracle中如果某列是Date類型,那麼它默認的格式是yyyy-MM-dd,如果使用where colDate = 『2005-06-08 17:14:57』就會出錯,『2005-06-08』可以。如果此時需要精確比較時間(小時,分,秒),可以採用下列方法:TO_DATE('2005-6-8 17:14:57','yyyy-mm-dd hh24:mi:ss')。由於Oracle和SQLServer在DateTime上對SQL標準的拓展實現方式不同,因此不能用同一個SQL實現。

4.Oracle中的TimeStamp(時間戳)與SqlServer中的差別很大。SqlServer中的TimeStamp是二進制格式存儲在資料庫中,可以將DataSet中的這個欄位類型設定為base64Binary類型。Oracle中的TimeStamp是時間格式存儲的。因此,無法用同一個DataSet既裝載SqlServer的TimeStamp,有裝載Oracle的TimeStamp.由於在應用程序中很少用到這個值,因此可以不檢索這個欄位。

5.Oracle中的TimeStamp不能像SqlServer在傳入數據的時候自動填充,可以設定默認值systimestamp來實現類似功能。

6.Oracle中沒有Boolean的欄位類型,可以用intger或者char代替SqlServer中的bit類型。

7.Oracle中會將」」空字元串當多NULL處理,也就是說,當應用程序往資料庫中插入一個空字元串時,實際資料庫會嘗試插入一個NULL。如果這個欄位是NOTNULL類型,那麼就會出錯,這種情況下可以用別的默認值代替空字元串。當從SqlServer導入數據到Oracle的時候,在NOTNULL列上的空字元串會導致導出操作失敗。此時可以在導出向導中手工修改SQL腳本,將空字元串設定成一個特殊值。

⑷ sqlserver和oracle sql語法的區別

sqlserver和oracle 對應兩種sql優化版本分別是T-SQL和PL-SQL
標准sql語法都兼容,比如子查詢那些,區別就是函數使用方式而已。
isnull 與 nvl
row_number() over 與 rownumber()
ceiling 與 ceil
log 與 ln
SQUARE 與 power
+ 與 ||
substring 與 substr
Len 與 length
getdate 與 sysdate
以上等等都是同功能的函數
當然也存在同名函數參數順序不同的情況,就不一一列出來了。

⑸ Oracle資料庫與SQL資料庫的比較

SQL
Server
是Microsoft(微軟)公司的資料庫產品,Microsoft
SQL
Server
脫胎於Sybase
SQL
Server。
SQL語言是標準的查詢語言,當然後面又有T-SQL(SQL加強版)的問世。可以同時用於不同的語言,如:Java,C#,C++等語言。
Oralce是Oralce(甲骨文)公司的資料庫產品。
Oralce號稱世界上最好的資料庫,不僅因為其自身的悠久歷史,在Oralce推出更新版本-9i(全面支持Interner應用),在企業級在線電子商務的領域內,保持自己的優勢。
微軟走的是壟斷的道路,所以他的產品一般也只能在他的操作系統上運行,這當然也包括SQL資料庫在內;而Oralce就可以全面適應不同的操作系統。

⑹ oracle sql語句 分為哪些

Oracle SQL語句分類
SQL(Structured Query Language)即結構化查詢語句,應用程序與資料庫交互的介面
集數據操作、數據定義、數據控制等功能於一體
ANSI先後制定推出了SQL-89、SQL-92、SQL-99標准

oracle SQL 語句主要分為一下四類:

DML(Data Mannipulation Language)數據操縱語言:查詢、操縱數據表資料行
SELECT : 檢索資料庫表或視圖數據
INSERT : 將數據行新增至資料庫表或視圖中
UPDATE : 修改表或視圖中現有的數據行
DELETE : 刪除表或視圖中現有的數據行
注意:DML語句不會自動提交事務!

DDL(Data Definition Language)數據定義語言:建立、修改、刪除資料庫中數據表對象
CREATE TABLE : 創建表
ALTER TABLE : 修改表
DROP TABLE : 刪除表
注意:DLL語句會自動提交事務!所以:DML語句事務提交之前可以回滾,DDL語句不能回滾事務

DCL(Data Control Language)數據控制語言:用於執行許可權授予與收回操作
GRANT : 給用戶或角色授予許可權
REVOKE : 收回用戶或角色的所有許可權

TCL(Transactional Control Language)事物控制語言:維護數據的一致性
COMMIT :提交已經進行的資料庫改變
ROLLBACK : 回滾已經進行的數據改變
SAVEPOINT : 設置保存點,用於部分數據改變的取消

⑺ oracle sql與標準的sql語句的區別

SQL語句區別!你能告訴我,哪一種資料庫的SQL語句才是標準的SQL語句了我倒是可以說一下SQLSERVER與ORACLE的小區別SQLSERVER 裡面取前幾條數據都是用Top 而ORACLE裡面沒有S: select top (5) * from 表O:select * from 表 rownum>0 and rownum<6再有一個是ORACLE要查一個任意字元的話,一定要藉助臨時表daul;而SQLSERVER 不用例:S:select '我是一個中國人'O:select '我是一個中國人' from daul;

⑻ oracle學習新手,求幾條sql的標准答案對照~~~

1、
select EID,Fname from
(select rownum id,E.EID,E.Fname from Employee E,Department D where E.DID=D.DID and D.Name='research' order by DOB desc)
where id=2;
2、
select EID,Fname from Employee where Fname like '%Y%' order by Fname desc;
3、
select Fname from Employee where DOB<(select agv(DOB) from Employee);
4、
select D.DID,D.Name,count(P.PID) from Department D,Project P where D.DID=P.DID group by D.DID,D.Name;
5、
select Fname from
(select E.EID,E.Fname Employee E,Work_On W where E.EID=W.PID group by E.EID,E.Fname having count(W.PID)=1);
6、
select Fname from
(select E.EID,E.Fname Employee E,Work_On W where E.EID=W.PID group by E.EID,E.Fname having count(W.PID)>=1);
7、
select Fname,project數量 from
(select E.EID,E.Fname,count(W.PID) project數量 Employee E,Work_On W where E.EID=W.PID group by E.EID,E.Fname);
8、
select A.EID,A.Fname,A.project數量 maleproject數量,B.project數量 femaleproject數量 from
(select E.EID,E.Fname,count(W.PID) project數量 Employee E,Work_On W where E.EID=W.PID and E.Gender='male' group by E.EID,E.Fname)A,
(select E.EID,E.Fname,count(W.PID) project數量 Employee E,Work_On W where E.EID=W.PID and E.Gender='female' group by E.EID,E.Fname)B;
where A.EID=B.EID;
9、
select P.Name,count(W.EID) Work_On W,Project P where W.PID=P.PID group by P.Name;

---
以上,希望對你有所幫助。

⑼ ORACLE 和 SQL區別

這兩種資料庫在不同方面都有著很大的區別,以下是具體的區別:

1.開放性: 1. SQL Server 只能在windows上運行,沒有絲毫的開放性,操作系統的系統的穩定對資料庫是十分重要的。Windows9X系列產品是偏重於桌面應用,NT server只適合中小型企業。而且windows平台的可靠性,安全性和伸縮性是非常有限的。它不象unix那樣久經考驗,尤其是在處理大資料庫。 2. Oracle 能在所有主流平台上運行(包括 windows)。完全支持所有的工業標准。採用完全開放策略。可以使客戶選擇最適合的解決方案。對開發商全力支持。

2.可伸縮性:並行性 1. SQL server 並行實施和共存模型並不成熟,很難處理日益增多的用戶數和數據卷,伸縮性有限。 2. Oracle 並行伺服器通過使一組結點共享同一簇中的工作來擴展windownt的能力,提供高可用性和高伸縮性的簇的解決方案。如果windowsNT不能滿足需要,用戶可以把資料庫移到UNIX中。Oracle的並行伺服器對各種UNIX平台的集群機制都有著相當高的集成度。

3.性能: 1. SQL Server 多用戶時性能不佳 2. Oracle 性能最高, 保持開放平台下的TPC-D和TPC-C的世界記錄。

4.客戶端支持及應用模式 :1. SQL Server C/S結構,只支持windows客戶,可以用ADO、DAO、OLEDB、ODBC連接。 2. Oracle 多層次網路計算,支持多種工業標准,可以用ODBC、JDBC、OCI等網路客戶連接。

5.操作簡便性: 1. SQL Server 操作簡單,但只有圖形界面。 2. Oracle 較復雜,同時提供GUI和命令行,在windowsNT和unix下操作相同。

6.使用風險性 :1. SQL server 完全重寫的代碼,經歷了長期的測試,不斷延遲,許多功能需要時間來證明。並不十分兼容。 2. Oracle 長時間的開發經驗,完全向下兼容。得到廣泛的應用。完全沒有風險。

7.價格:ORACLE貴過SQLSRVER

⑽ oracle 11g PL/SQL 官方標准文檔 Example 4–21 FOR LOOP使用label

需要在sqlplus執行

SQL><<main>>--Labelblock.
2DECLARE
3iNUMBER:=5;
4BEGIN
5FORiIN1..3LOOP
6DBMS_OUTPUT.PUT_LINE(
7'local:'||TO_CHAR(i)||',global:'||
8TO_CHAR(main.i)--.
9);
10ENDLOOP;
11ENDmain;
12/
PL/SQL過程已成功完成。
SQL>setserverouton
SQL>/
local:1,global:5
local:2,global:5
local:3,global:5
PL/SQL過程已成功完成。
SQL>