Oracle-05-SQL語句概述、分類&SQL*PLUS概述(初識insert,desc,list,r,del,a,c,n等命令)

來源:互聯網
上載者:User

標籤:步驟   data-   net   grant   structure   content   com   觸發器   斷行符號   

一、SQL語句概述

(1)SQL全程是“結構化查詢語言 (SQL)(Structured Query Language)”。

SQL是大多數主流資料庫系統採用的標準查詢語言。

(2)SQL語句的優勢:語言結構簡單、功能強大、簡單易學。

(3)在進行SQL開發是為了更easy的訪問關聯式資料庫,所以SQL可以運行以下幾種操作:

①從資料庫中查詢資料

②向資料庫中插入資料

③從資料庫中刪除資料

④建立和操作資料庫對象(如使用者、索引、觸發器等)

⑤控制對資料庫的訪問

⑥更新資料

(4)注意:SQL不是程式設計語言。

它僅僅是提供輸入、檢索、更改、刪除和顯示儲存在資料庫中的資料的語句。

(5)假設以後在使用SQL語句出現錯誤資訊,能夠進入http://ora-code.com網站查詢資訊。就是假設報錯資訊ORA-XXXXXX。當中XXXXXX是一串數字。可能三位可能五位,所以一旦出現這樣的錯誤資訊。能夠登入上面網站查詢。

 

二、SQL分類(重點)

(1)資料定義語言 (Data Definition Language)(DDL)。如:create,drop,rename…(一旦運行成功,基本不可能恢複原樣,沒有迴旋餘地,比方現有A表。將其改名,假設運行成功,無法改變。無法恢複原樣)

(2)資料操作語言(DML),如:insert,update,delete…(資料能夠復原)

比方如今登入資料庫使用者是sys,用例如以下命令查詢t表,其內沒有資料資訊,例如以:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

如今給t表加入資料:


然後查詢t表。發現裡面有剛才加入的資料:


如今又一次開一個cmd表單,用新使用者lisi登入。查詢t表,發現其內沒有剛才加入的資料,例如以:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >


在原sys登入的cmd表單內繼續寫commit命令,例如以:


然後再去lisi登入的cmd表單查詢t表,發現有新加入的資料。例如以:


【總結】假設用DML操作資料後。必須commit,才幹保證真正存到資料庫內。

(3)資料控制語言(DCL),如:grant,Revoke…

(4)查詢語言,如:select…

(5)事務控制語言(Transaction Control,TC)。如:commit,rollback,savepoint…

 

三、SQL*PLUS概述

1.SQL*PLUS定義,它是一個由ORACLE開發的、能夠運行SQL語句的環境,它也是提供了一種串連資料庫的直接運行方式。

 

2.SQL*PLUS特徵

它是一個client應用工具。如命令列SQL*PLUS、Oracle中的SQL*PLUS

或iSQL*PLUS他們都能夠與資料庫管理系統直接通訊。

 

3.假設出現以下介面,就是SQL*PLUS環境。例如以:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

四、顯示表結構文法格式:desc表名

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

五、查看緩衝中SQL語句的文法格式:l(或者list)

比如,假設先輸入select*fromall_users;後斷行符號。會看到全部使用者,然後這條命令被存入SQL*PLUS緩衝,假設這時候輸入l,會出現上一條命令資訊,例如以:


【注意】將來SQL語句會寫非常長。所以須要換行寫,例如以:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

方法是輸入完第一行後斷行符號,接著輸入第二行,假設輸入分號則表示結束,這時候若用l查詢上一條語句,也可查詢到,例如以:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

圖中*表示定位在當前行。

 

六、將緩衝中的SQL語句又一次執行一次,格式為:/(或者r)

這事實上是一個快捷操作。

假設寫/後斷行符號。則直接執行緩衝中的SQL語句。假設寫r斷行符號。則先列出緩衝中的SQL語句再執行該語句。

 

七、n命令的使用

假設寫的SQL語句出錯,能夠是使用“n”。這個“n”的意思是設定sql*plus中當前行,“n”就是一個詳細的值(如:1,2,3…)。

文法格式:n

比如。寫個1斷行符號。則定位到緩衝SQL命令中的第1行,寫個2斷行符號。則定位到緩衝SQL中的第2行

 

八、刪除命令

假設要刪除某行。能夠使用del命令。

文法格式del n

輸入del 2後將緩衝中第2行代碼刪除



九、加入命令

假設如今某一行後面加入一些sql語句,能夠使用a(append)。

文法格式:a

比如:先用list查看緩衝區命令,然後用a加入命令

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

發現兩個命令靠一起了,即student和where連一起了。所以在使用a命令往緩衝區加入命令時候敲兩個斷行符號,當中第一個斷行符號是a命令必須帶的斷行符號,第二個斷行符號是作為新代碼的開頭被加入到緩衝區,例如以:



問:假設緩衝區有3行SQL命令,須要在第二行加入命令。怎樣操作?

答:先list命令將緩衝區命令列舉出來,然後用n命令,即輸入2定位到第2行,然後用a命令在該行後面加入新命令。然後再用list查看一下新命令,最後執行。全步驟例如以:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >


十、改動命令

假設要改動sql緩衝中的語句。能夠使用c(change)命令。

文法格式:c /被改動內容/新內容

(c後面有兩個空格)

比如。可用c命令做到部分刪除的效果。例如以:


先list出緩衝區全部命令,然後用n命令定位到第2行,然後用c命令將’%s%’之後命令刪除,僅僅要c  /or 1=1/就可以,也就是將須要刪除的部分替換為空白。注意c後面兩個斷行符號。

Oracle-05-SQL語句概述、分類&SQL*PLUS概述(初識insert,desc,list,r,del,a,c,n等命令)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.