SQL*PLUS的使用(2)—sqlplus命令

SQL*PLUS的使用(2)—sqlplus命令

原文見我的QQ空間:http://user.qzone.qq.com/284648964?ptlang=2052

由於原文是寫在我的QQ空間,文章轉過來的過程中造圖片丟失,對大家造成的影響深表歉意!

SQL命令和PL/SQL都是不區分大小寫的

一、sqlplus命令格式:

sqlplus [ [option] [logon] [start] ]       支持縮寫。

1.  option選項:一些參數,常用的三個。

-H [ELP] 獲取幫助

圖片

-V [ERSION]sqlplus版本,不是ORCLE數據庫的版本。通常是高版本的客戶端可以連接到低版本的服務端。

-S[ILENT]以批處理方式運行腳本時,常用的選項。

2.logon指定連接服務器的字符串。

{[username]/[password]/[@connect_identifier] [as {sysoper|sysdab|sysasm]}]/nolog

connect_identifier在tnsnames.ora文件中指定的,這個文件存儲在客戶端。

tnsnames.ora在10G中的位置

C:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora

tnsnames.ora在11G中的位置

C:\oracle\network\admin\tnsnames.ora

 

例如: SYS/ZWT123@ORCL AS SYSDBA /NOLOG

NOLOG    不連接數據庫,進入SQLPLUS。

基於安全性考慮,不要使用USERNAME/PASSWORD 格式。演示一下:

圖片

我們在任務管理器裏面看一下:

圖片

管理員的密碼很容易被人竊取了。

 

3.START 啓動的腳本。

 

二、SQL BUFFER,SQL緩衝區存儲最近一條SQL語句,最近一個PL/SQL語句塊,不儲存SQL*PLUS命令。

LIST    顯示SQL BUFFER中的命令。

RUN    執行SQL BUFFER中的命令,先顯示命令再執行。

/   執行SQL BUFFER中的命令,不顯示命令就執行。

save  可以把SQL BUFFER中的SQL語句和PL/SQL語句保存到文件,例如 :

SAVE E:/MYSQLSCRIPT/1.sql

三、安裝SQL*PLUS命令得幫助。

以SYSTEM用戶登錄,然後運行hlpbld.sql.

F:\oracle\product\10.2.0\db_1\sqlplus\admin\help

SQL>@?\product\10.2.0\db_1\sqlplus\admin\help\hlpbld.sql  helpus.sql

@表示執行腳本文件,?表示ORACLE_HOME的目錄。

我們以SYSTEM用戶登錄後,先用HELP命令試一下,如果提示爲:

HELP not accessible.   說明幫助沒有安裝。

(1)安裝完畢後,我們可以用HELP INDEX查看所有的SQL*PLUS命令

(2)退出SQL*PLUS

EXIT  或者QUIT ,或者HOST

(3)查看一下表的定義、視圖定義 DESC(describe)

四、常用一些技巧。

1.  結束SQL語句有三種方法

(1)用分號;結束並執行。

(2)另起一行用 /  結束並執行。

(3)空一行,這種方法不執行語句,只是把它存到了SQL BUFFER中了。

 提示:SQL語句過長可以使用“-”來表示續行。

  2. 結束PL/SQL語句塊:

(1)用句點. 另起一行,結束不執行,存到SQL BUFFER中。

(2)用/,另起一行,結束執行。

3.   在SQL*PLUS中執行操作系統命令,使用HOST。例如在LINUX系統中的SQL*PLUS中執行,LINUX命令。

host ls -l /home

4.  SQL*PLUS與操作系統命令行之間的快速切換

從SQL*PLUS切換到操作系統命令行中,WINDOWS中SQL*PLUS使用$,  LINUX中SQL*PLUS使用!,執行完操作系統命令,使用exit,可以再次返回到SQL*PLUS中

5.實現分頁顯示功能(pause)。

show pause可以查看是否啓用的此功能。

show pagesize 查看每頁顯示多少行

set pause on | off

set pagesize 可以

回車可以翻到下一頁

6.實現自動提交功能。

在SQL*PLUS中使用DML(insert   update delete)語言時,所執行的結果只是存到緩衝區了,只有使用COMMIT命令,纔會提交到數據庫文件中,正常退出SQL*PLUS也會自動寫到數據庫中。

show autocommit

set  autocommit on |off

set autocommit  10  表示執行10條SQL語句才提交一次。每個PL/SQL語句塊算做一條。

7.每行顯示字符大小。

show linesize  (顯示LINESIZE)

set linesize 150 (設置LINESIZE大小)

8.使用歷史命令。

以前的版本我沒用過也不知道,10G的版本是可以使用方向鍵可以使用以前用過的命令,學LINUX的命令行了。

 

如果是在UNIX/LINUX中可以使用ps -ef | grep sql,也可以看到。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章