Oracle SQL簡介

SQL歷史

EF Codd博士在1970年6月在計(jì)算機(jī)機(jī)械協(xié)會(huì)(ACM)雜志“ACM通訊”上發(fā)表了“大型共
享數(shù)據(jù)庫數(shù)據(jù)關(guān)系模型” 咙崎。Codd的模型現(xiàn)在被接受為關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS)的終極模型牍帚。這種結(jié)構(gòu)化英語查詢語言(SEQUEL)由IBM公司開發(fā)搓彻,從而使用Codd的模
型破喻。SEQUEL后來成為SQL(仍然發(fā)音為“sequel”)扒磁。1979年参淫,Relational Software无切,Inc.
(現(xiàn)在的Oracle)推出了第一個(gè)商業(yè)上可用的SQL實(shí)現(xiàn)枢希。今天泳秀,SQL被接受為標(biāo)準(zhǔn)的
RDBMS語言标沪。

SQL標(biāo)準(zhǔn)

Oracle努力遵守行業(yè)接受的標(biāo)準(zhǔn),并積極參與SQL標(biāo)準(zhǔn)委員會(huì)嗜傅。
業(yè)界認(rèn)可的委員會(huì)是美國國家標(biāo)準(zhǔn)協(xié)會(huì)(ANSI)和國際標(biāo)準(zhǔn)化組織(ISO)金句,隸屬于國際電工委員會(huì)(IEC)。
ANSI和ISO / IEC均接受SQ??L作為關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言吕嘀。
當(dāng)這些組織同時(shí)發(fā)布新的SQL標(biāo)準(zhǔn)時(shí)违寞,標(biāo)準(zhǔn)的名稱符合組織使用的慣例,但標(biāo)準(zhǔn)在技術(shù)上是相同的偶房。

2008年7月采用最新的SQL標(biāo)準(zhǔn)趁曼,通常稱為SQL:2008。
本標(biāo)準(zhǔn)的正式名稱為:

ANSI / ISO / IEC 9075:2008“數(shù)據(jù)庫語言SQL”棕洋,第1部分(“SQL / Framework”)挡闰,2(“SQL / Foundation”),3(“SQL / CLI” )掰盘,9(“SQL / MED”)摄悯,10(“SQL / OLB”),11(“SQL / Schemata”)愧捕,13(“SQL / JRT”)和ANSI / ISO / IEC 9075-14: “數(shù)據(jù)庫語言SQL”第14部分(“SQL / XML”)

ISO / IEC 9075:2008“數(shù)據(jù)庫語言SQL”奢驯,第1部分(“SQL / Framework”),2(“SQL / Foundation”)次绘,3(“SQL / CLI”)叨橱, 9(“SQL / MED”)典蜕,10(“SQL / OLB”),11(“SQL / Schemata”)罗洗,13(“SQL / JRT”)和ISO / IEC 9075-14:2008愉舔,“數(shù)據(jù)庫語言SQL “,第14部分(”SQL / XML“)

SQL如何工作

SQL的優(yōu)勢為所有類型的用戶(包括應(yīng)用程序員伙菜,數(shù)據(jù)庫管理員轩缤,管理員和最終用戶)提供了優(yōu)勢。從技術(shù)上講贩绕,SQL是一種數(shù)據(jù)子語言火的。SQL的目的是為關(guān)系數(shù)據(jù)庫(如Oracle數(shù)據(jù)庫)提供一個(gè)接口,所有SQL語句都是指向數(shù)據(jù)庫的指令淑倾。在這個(gè)SQL中與C和BASIC等通用編程語言不同馏鹤。SQL的功能如下:

  • 它將數(shù)據(jù)集合作為組而不是作為單個(gè)單元進(jìn)行處理。

  • 它提供對數(shù)據(jù)的自動(dòng)導(dǎo)航娇哆。

  • 它使用單獨(dú)復(fù)雜和強(qiáng)大的語句湃累,因此獨(dú)立。流控制語句最初不是SQL的一部分碍讨,但它們可以在SQL治力,ISO / IEC 9075-5:1996最近被接受的可選部分中找到。流控制語句通常被稱為“持久存儲(chǔ)模塊”(PSM)并且Oracle SQL的PL / SQL擴(kuò)展與PSM類似勃黍。

SQL允許您在邏輯級(jí)別處理數(shù)據(jù)宵统。只有當(dāng)您想要操作數(shù)據(jù)時(shí),才需要關(guān)心實(shí)現(xiàn)細(xì)節(jié)覆获。例如马澈,要從表中檢索一組行,您可以定義用于過濾行的條件弄息。滿足條件的所有行都在單個(gè)步驟中檢索痊班,并且可以作為單位傳遞給用戶,另一個(gè)SQL語句或應(yīng)用程序疑枯。您不必一一處理這些行,也不必?fù)?dān)心物理存儲(chǔ)或檢索的方式蛔六。所有SQL語句都使用優(yōu)化器荆永,Oracle數(shù)據(jù)庫的一部分決定訪問指定數(shù)據(jù)的最有效手段。Oracle還提供了可以使優(yōu)化器更好地執(zhí)行其工作的技術(shù)国章。

SQL為各種任務(wù)提供語句具钥,包括:

查詢數(shù)據(jù)

  • 插入,更新和刪除表中的行
  • 創(chuàng)建液兽,替換骂删,更改和刪除對象
  • 控制對數(shù)據(jù)庫及其對象的訪問
  • 保證數(shù)據(jù)庫的一致性和完整性
  • SQL將所有前述任務(wù)統(tǒng)一為一致的語言掌动。

所有關(guān)系數(shù)據(jù)庫的通用語言

所有主要的關(guān)系數(shù)據(jù)庫管理系統(tǒng)都支持SQL,因此您可以將SQL獲得的所有技能從一個(gè)數(shù)據(jù)庫傳輸?shù)搅硪粋€(gè)數(shù)據(jù)庫宁玫。另外粗恢,用SQL編寫的所有程序都是可移植的。他們經(jīng)撑繁瘢可以從一個(gè)數(shù)據(jù)庫移動(dòng)到另一個(gè)數(shù)據(jù)庫眷射,修改很少。

使用企業(yè)管理器

可以使用SQL語法完成許多操作佛掖,可以使用Enterprise Manager輕松完成妖碉。有關(guān)更多信息,請參閱Oracle Enterprise Manager文檔集芥被,Oracle數(shù)據(jù)庫2 Day DBA或任何Oracle數(shù)據(jù)庫2 Day +書欧宜。

詞匯約定

用于發(fā)出SQL語句的以下詞匯約定專門適用于SQL的Oracle數(shù)據(jù)庫實(shí)現(xiàn),但在其他SQL實(shí)現(xiàn)中通乘┢牵可以接受冗茸。

當(dāng)您發(fā)出SQL語句時(shí),可以在語句定義中的任何位置的任何位置包含一個(gè)或多個(gè)選項(xiàng)卡羹铅,回車符蚀狰,空格或注釋。
因此职员,Oracle數(shù)據(jù)庫以相同的方式評(píng)估以下兩個(gè)語句:

SELECT last_name麻蹋,salary * 12,MONTHS_BETWEEN(SYSDATE焊切,hire_date)

FROM employees

where_id = 30

ORDER BY last_name;

SELECT last_name扮授,

salary * 12,,

MONTHS_BETWEEN(SYSDATE专肪,hire_date)

FROM employees

where_id = 30

ORDER BY last_name;

保留字刹勃,關(guān)鍵字,標(biāo)識(shí)符和參數(shù)中的情況是微不足道的嚎尤。然而荔仁,案例在文本文字和引用的名稱中是重要的。

工具支持

Oracle提供了許多實(shí)用程序來方便您的SQL開發(fā)過程:

  • Oracle SQL Developer是一種圖形工具芽死,可讓您瀏覽乏梁,創(chuàng)建,編輯和刪除(刪除)數(shù)據(jù)庫對象关贵,編輯和調(diào)試PL / SQL代碼遇骑,運(yùn)行SQL語句和腳本,操作和導(dǎo)出數(shù)據(jù)以及創(chuàng)建和查看報(bào)表揖曾。使用SQL Developer落萎,您可以使用標(biāo)準(zhǔn)Oracle數(shù)據(jù)庫身份驗(yàn)證連接到任何目標(biāo)Oracle數(shù)據(jù)庫模式亥啦。連接后,可以對數(shù)據(jù)庫中的對象執(zhí)行操作练链。您還可以連接到所選第三方(非Oracle)數(shù)據(jù)庫(如MySQL翔脱,Microsoft SQL Server和Microsoft Access)的模式,查看這些數(shù)據(jù)庫中的元數(shù)據(jù)和數(shù)據(jù)兑宇,并將這些數(shù)據(jù)庫遷移到Oracle碍侦。

  • SQL * Plus是與每個(gè)Oracle數(shù)據(jù)庫服務(wù)器或客戶端安裝一起安裝的交互式和批處理查詢工具。它具有命令行用戶界面和名為iSQL * Plus 的基于Web的用戶界面隶糕。

  • Oracle JDeveloper是一個(gè)支持Java瓷产,Web服務(wù)和SQL的完整生命周期的多平臺(tái)集成開發(fā)環(huán)境。它提供了一個(gè)圖形界面枚驻,用于執(zhí)行和調(diào)整SQL語句和可視化架構(gòu)圖(數(shù)據(jù)庫建模器)濒旦。它還支持編輯,編譯和調(diào)試PL / SQL應(yīng)用程序再登。

  • Oracle Application Express是用于開發(fā)和部署數(shù)據(jù)庫相關(guān)Web應(yīng)用程序的托管環(huán)境尔邓。
    SQL Workshop是Oracle Application Express的一個(gè)組件,可讓您從Web瀏覽器查看和管理數(shù)據(jù)庫對象锉矢。SQL Workshop可以快速訪問SQL命令處理器和SQL腳本存儲(chǔ)庫梯嗽。

Oracle調(diào)用接口和Oracle預(yù)編譯器可讓您在過程編程語言中嵌入標(biāo)準(zhǔn)SQL語句。

Oracle調(diào)用接口(OCI)允許您在C程序中嵌入SQL語句沽损。

Oracle預(yù)編譯器Pro * C / C ++和Pro * COBOL解釋了嵌入式SQL語句灯节,并將它們轉(zhuǎn)換為C / C ++和COBOL編譯器可以理解的語句。
大多數(shù)(但不是全部)Oracle工也支持Oracle SQL的所有功能绵估。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末炎疆,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子国裳,更是在濱河造成了極大的恐慌形入,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,348評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件缝左,死亡現(xiàn)場離奇詭異亿遂,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)渺杉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,122評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門蛇数,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人少办,你說我怎么就攤上這事苞慢∷性” “怎么了英妓?”我有些...
    開封第一講書人閱讀 156,936評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵挽放,是天一觀的道長。 經(jīng)常有香客問我蔓纠,道長辑畦,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,427評(píng)論 1 283
  • 正文 為了忘掉前任腿倚,我火速辦了婚禮纯出,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘敷燎。我一直安慰自己暂筝,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,467評(píng)論 6 385
  • 文/花漫 我一把揭開白布硬贯。 她就那樣靜靜地躺著焕襟,像睡著了一般。 火紅的嫁衣襯著肌膚如雪饭豹。 梳的紋絲不亂的頭發(fā)上鸵赖,一...
    開封第一講書人閱讀 49,785評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音拄衰,去河邊找鬼它褪。 笑死,一個(gè)胖子當(dāng)著我的面吹牛翘悉,可吹牛的內(nèi)容都是我干的茫打。 我是一名探鬼主播,決...
    沈念sama閱讀 38,931評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼镐确,長吁一口氣:“原來是場噩夢啊……” “哼包吝!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起源葫,我...
    開封第一講書人閱讀 37,696評(píng)論 0 266
  • 序言:老撾萬榮一對情侶失蹤诗越,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后息堂,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體嚷狞,經(jīng)...
    沈念sama閱讀 44,141評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,483評(píng)論 2 327
  • 正文 我和宋清朗相戀三年荣堰,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了床未。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,625評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡振坚,死狀恐怖薇搁,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情渡八,我是刑警寧澤啃洋,帶...
    沈念sama閱讀 34,291評(píng)論 4 329
  • 正文 年R本政府宣布传货,位于F島的核電站,受9級(jí)特大地震影響宏娄,放射性物質(zhì)發(fā)生泄漏问裕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,892評(píng)論 3 312
  • 文/蒙蒙 一孵坚、第九天 我趴在偏房一處隱蔽的房頂上張望粮宛。 院中可真熱鬧,春花似錦卖宠、人聲如沸巍杈。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽秉氧。三九已至,卻和暖如春蜒秤,著一層夾襖步出監(jiān)牢的瞬間汁咏,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來泰國打工作媚, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留攘滩,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,324評(píng)論 2 360
  • 正文 我出身青樓纸泡,卻偏偏與公主長得像漂问,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子女揭,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,492評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容