標籤:步驟 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等命令)