Oracle筆記(二) SQLPlus命令

2022-07-29 01:00:19 字數 4093 閱讀 3100

對於oracle資料庫操作主要使用的是命令列方式,而所有的命令都使用sqlplus完成,對於sqlplus有兩種形式。

在oracle 10g之中主要使用的是sqlplusw命令,因為其可以進行一些顯示資料的調整。

此時會找到預設的已經可以使用的資料庫例項。

範例:輸入查詢指令

此時的資料已經可以正常的顯示,但是依然會存在資料折行的問題,因為這個是預設的每行的資料大小,而現在可以通過兩個命令進行調整:

以後這兩個命令統一被稱為格式化命令,但是這些格式化命令在sqlplus下的設定並不是很明顯。

但是sqlplusw雖然顯示上方便一些,可是對於命令的編輯上卻不是很方便,如正常的操作,命令寫錯了,則肯定使用方向鍵移到錯誤的位置上進行修改,但是在sqlplusw之中,方向鍵只能控制螢幕的移動,所以這個命令根本就不適合於編輯,所以在sqlplusw之中提供了ed和@指令,可以進行記事本的呼叫和執行;

此時會提示使用者說,現在找不到「a.sql」的檔案,詢問是否建立,選擇「是」,但是使用ed開啟記事本之後 ,oracle中的sqlplusw視窗會進入到阻塞狀態,無法使用。

但是在windows之中,由於提供了許多方便的編輯軟體,所以一般會在外部編輯程式,例如,現在在d盤上建立乙個demo.txt的檔案,裡面儲存程式**。

這個時候要讀取在硬碟上的檔案,則必須寫上完整的路徑:@d:\demo.txt,而且如果現在這個檔案的字尾是「*.sql」的話,則不用輸入檔案字尾(demo.sql),輸入:@d:\demo,或者更省事直接輸入:@d:demo。

在乙個資料庫之中,會有許多的使用者(現在已知的是四個使用者),這每乙個使用者下都會有多張自己的資料表,所以要想檢視所有的資料表,則可以使用如下的命令:

select * from tab;

而且由於使用者眾多,所以如果要想知道當前的登入使用者,則可以使用:show user; 命令完成。

而且在sqlplusw之中也可以直接進行使用者的登入切換,使用如下的語法完成:

conn 使用者名稱/密碼 [as sysdba];

使用sys使用者登入:conn sys/change_on_install as sysdba;

但是,一旦使用了sys連線之後,則無法直接查詢emp表資料。

對於每一張表,都有其屬於的使用者,所以一張表的完整名稱是「使用者名稱.表名稱」或者說是「模式名.表名稱」,所以不同的使用者要想訪問其他使用者的表,則應該加上使用者名稱,即現在的訪問名稱:

select * from scott.emp;

一旦使用了超級管理員登入的話,可以通過命令手工的控制資料庫例項的開啟和關閉;

sql> conn sys/sys assysdba;

已連線。

sql> shutdownimmediate;

資料庫已經關閉。

已經解除安裝資料庫。

oracle 例程已經關閉。

另外,sqlplusw命令視窗也可以呼叫本機的操作命令,使用「host」作為字首。

host copy d:\demo.sql d:\hello.txt
以上命令必須掌握,以後肯定會使用到。

對於oracle資料庫操作主要使用的是命令列方式,而所有的命令都使用sqlplus完成,對於sqlplus有兩種形式。

在oracle 10g之中主要使用的是sqlplusw命令,因為其可以進行一些顯示資料的調整。

此時會找到預設的已經可以使用的資料庫例項。

範例:輸入查詢指令

此時的資料已經可以正常的顯示,但是依然會存在資料折行的問題,因為這個是預設的每行的資料大小,而現在可以通過兩個命令進行調整:

以後這兩個命令統一被稱為格式化命令,但是這些格式化命令在sqlplus下的設定並不是很明顯。

但是sqlplusw雖然顯示上方便一些,可是對於命令的編輯上卻不是很方便,如正常的操作,命令寫錯了,則肯定使用方向鍵移到錯誤的位置上進行修改,但是在sqlplusw之中,方向鍵只能控制螢幕的移動,所以這個命令根本就不適合於編輯,所以在sqlplusw之中提供了ed和@指令,可以進行記事本的呼叫和執行;

此時會提示使用者說,現在找不到「a.sql」的檔案,詢問是否建立,選擇「是」,但是使用ed開啟記事本之後 ,oracle中的sqlplusw視窗會進入到阻塞狀態,無法使用。

但是在windows之中,由於提供了許多方便的編輯軟體,所以一般會在外部編輯程式,例如,現在在d盤上建立乙個demo.txt的檔案,裡面儲存程式**。

這個時候要讀取在硬碟上的檔案,則必須寫上完整的路徑:@d:\demo.txt,而且如果現在這個檔案的字尾是「*.sql」的話,則不用輸入檔案字尾(demo.sql),輸入:@d:\demo,或者更省事直接輸入:@d:demo。

在乙個資料庫之中,會有許多的使用者(現在已知的是四個使用者),這每乙個使用者下都會有多張自己的資料表,所以要想檢視所有的資料表,則可以使用如下的命令:

select * from tab;

而且由於使用者眾多,所以如果要想知道當前的登入使用者,則可以使用:show user; 命令完成。

而且在sqlplusw之中也可以直接進行使用者的登入切換,使用如下的語法完成:

conn 使用者名稱/密碼 [as sysdba];

使用sys使用者登入:conn sys/change_on_install as sysdba;

但是,一旦使用了sys連線之後,則無法直接查詢emp表資料。

對於每一張表,都有其屬於的使用者,所以一張表的完整名稱是「使用者名稱.表名稱」或者說是「模式名.表名稱」,所以不同的使用者要想訪問其他使用者的表,則應該加上使用者名稱,即現在的訪問名稱:

select * from scott.emp;

一旦使用了超級管理員登入的話,可以通過命令手工的控制資料庫例項的開啟和關閉;

sql> conn sys/sys assysdba;

已連線。

sql> shutdownimmediate;

資料庫已經關閉。

已經解除安裝資料庫。

oracle 例程已經關閉。

另外,sqlplusw命令視窗也可以呼叫本機的操作命令,使用「host」作為字首。

host copy d:\demo.sql d:\hello.txt
以上命令必須掌握,以後肯定會使用到。

oracle 學習筆記 二

from子句 select用於指定要查詢的列 from指定要從哪幾個表中查詢 如果要查詢所有列,可以在select後面使用 號 如果只查詢特定的列,可以直接在select後面指定列名,列名之間用逗號隔開 select from dept 使用別名 在sql語句中可以通過使用列的別名改標題的顯示文字,...

oracle學習筆記 二

from子句 select用於指定要查詢的列 from指定要從哪幾個表中查詢 如果要查詢所有列,可以在select後面使用 號 如果只查詢特定的列,可以直接在select後面指定列名,列名之間用逗號隔開 select from dept 使用別名 在sql語句中可以通過使用列的別名改標題的顯示文字,...

oracle學習筆記二

約束是在表上強制執行的資料校驗規則.當表中資料有相互依賴性時,可以保護相關的資料不被刪除.oracle 支援下面五類完整性約束 1 not null 非空 create table employees employee id number 6 last name varchar2 25 not nu...