自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

利用腳本文件管理Oracle數(shù)據(jù)庫

數(shù)據(jù)庫 Oracle 數(shù)據(jù)庫運維
腳本文件是Oracle數(shù)據(jù)庫管理中的一個不可缺的工具,通過本文,大家會發(fā)現(xiàn)利用腳本文件管理Oracle數(shù)據(jù)庫也不是大家想像的那么困難,同時消除對這方面的恐懼感。

利用腳本文件來管理Oracle數(shù)據(jù)庫,具有很大的優(yōu)越性。

如可以降低命令的輸入量;如可以將調(diào)試測試通過的命令保存起來以便于下次需要的時候再次使用;如可以避免輸入上的錯誤等等。雖然說,Oracle數(shù)據(jù)庫提供的SQL*Plus程序編輯工具提供了一定程度的現(xiàn)實、編輯、修改SQL緩沖區(qū)命令的功能,但是,其對命令的編輯能力是非常弱小的,操作起來也不如腳本文件那么方便。故很多數(shù)據(jù)庫管理專家喜歡把一些常用的命令制作成腳本文件。在以后需要用的時候,直接調(diào)用腳本文件即可。如筆者現(xiàn)在保存的有用腳本文件已有近百個。在需要用的時候,只要把腳本文件拿過來,有的可以直接拿來執(zhí)行;有的只要稍微根據(jù)實際情況修改一下,也可以使用。

***步:創(chuàng)建腳本文件

在Oracle數(shù)據(jù)庫重,創(chuàng)建腳本文件的方式很多。如可以直接在記事本中創(chuàng)建腳本文件,也可以通過SQL*Plus工具直接創(chuàng)建。不過,筆者的意見是,在SQL*Plus中直接創(chuàng)建腳本文件的話,比較麻煩。這主要是因為在SQL*Plus工具中,命令編輯能力非常有效。如不能夠使用鍵盤上的箭頭鍵定位輸入的位置,不能夠使用DEL鍵刪除輸入的內(nèi)容等等。而且閱讀起來也比較困難。

筆者喜歡的作法是,現(xiàn)在一些編輯器中,如文本文件中先把腳本語句寫好,然后直接復(fù)制到SQL*Plus工具中進行測試。若測試通過的話,即就可以把它保存起來,以待下次有需要的時候使用。所以,利用第三方的腳本語句編輯工具,有一個缺陷就是不能夠直接對語句進行測試。而需要人工的把它復(fù)制粘貼到Oracle環(huán)境中進行測試。不過這對于命令編輯來說,這點功夫還是值得的。畢竟在第三方工具中編輯腳本語句,要比在SQL*Plus中,編輯腳本要簡單的不知道多少倍。筆者也搞不清楚,像Oracle這么大的數(shù)據(jù)庫管理軟件,為什么不開發(fā)一個像樣的腳本語句編輯器呢。

另外需要說明的一點就是,在SQL*Plus語句中,雖然可以對未測試或者有錯誤的腳本語句進行保存。不過,這么做的話,只會浪費時間。為了提高腳本語句的可用性,筆者是強烈建議,數(shù)據(jù)庫管理員不要太過于自信,腳本語句編寫完成后,一定要進行測試。只有經(jīng)過測試表明這個腳本語句有用后,才能對其進行歸檔。

其次,若采用記事本等工具編寫腳本語句的時候,為了在Oracle環(huán)境中可以直接調(diào)用這個腳本文件,***把腳本文件的擴展名改為SQL。這是Oracle數(shù)據(jù)庫承認的腳本文件擴展名。

還有對于初次接觸腳本文件的數(shù)據(jù)庫管理員來說,對于腳本文件的格式要稍微注意一點。大體上,跟普通的SQL語句類似。只是在兩個方面要引起注意。一是在腳本文件的***一行,一定要添加“/”符號。這個符號的作用是,告示數(shù)據(jù)庫現(xiàn)在可以執(zhí)行這條語句了。二是在SQL語句的***一條語句中,不要添加“;”號。否則的話,下次運行這個腳本語句的時候,會出現(xiàn)錯誤。

***,在編寫腳本文件的時候,要注意腳本文件的變量問題。若腳本文件需要外界傳入?yún)?shù),則在執(zhí)行的時候,SQL*Plus工具,會使用這些外部傳入的值替換腳本文件中的替換參數(shù),所以,腳本文件中替換參數(shù)的生命方式跟Oracle數(shù)據(jù)庫中函數(shù)與過程的變量聲明方式有一點區(qū)別。在腳本文件中,在使用替換參數(shù)的時候,不需要事先聲明。而是在要用到的時候,直接利用&1 &2等來表示。

第二步:編輯腳本文件

在我們使用腳本文件的時候,往往需要根據(jù)實際情況,對其進行稍微的調(diào)整。對腳本文件進行編輯,也有兩種方式。一是通過SQL*Plus工具,二是第三方獨立的腳本編輯軟件。

對于一些調(diào)整不大的腳本文件,我們可以直接利用SQL*Plus工具打開,然后進行編輯。但是,對于需要進行大量修改的腳本文件,則筆者建議數(shù)據(jù)庫管理員采用第三方獨立的腳本編輯軟件。原因很簡單,就如同上面所說的那樣,SQL*Plus工具腳本命令編輯功能非常的薄弱。若采用這個工具對現(xiàn)成的腳本語句進行編輯的話,則可能工作量還是重新編寫一個來的輕。所以,數(shù)據(jù)庫管理員要根據(jù)實際的情況,選擇合適的腳本編輯工具。

另外,在編輯的過程中,要注意語法的正確性。特別是要注意,不能夠改變其固有的格式。如不要不小心刪除了***的“/”符號結(jié)束,等等。筆者現(xiàn)在喜歡用的時微軟自帶的記事本作為腳本的編輯工具。他比較方便,而且也不用再去網(wǎng)上找專業(yè)的腳本編輯工具。即省事,又能夠我們數(shù)據(jù)庫管理員的常規(guī)需求,何樂而不為呢!

第三步:運行腳本文件

腳本建立好之后,如何運行腳本呢?在Oracle系統(tǒng)中也提供了許多方式。數(shù)據(jù)庫管理員可以根據(jù)自己的使用習(xí)慣來進行選擇。

一是通過Start語句來調(diào)用腳本文件。其語法是Start Filemame[相關(guān)參數(shù)]。在運行這個命令的時候,需要注意幾個問題。

1.腳本文件的擴展名問題。上面在建立腳本文件的時候,筆者就跳掉過,為了在SQL*Plus等工具中可以直接調(diào)用這個腳本文件,***能夠把擴展名改為Oracle數(shù)據(jù)庫能夠接受的擴展名。默認情況下,擴展名設(shè)置為SQL即可。

2.腳本文件的路徑問題。若用戶在利用Start調(diào)用腳本文件的時候,若沒有清楚的指名保存路徑的話,則SQL*Plus工具會現(xiàn)在當(dāng)前的目錄中進行查找;若沒有的話,則會根據(jù)環(huán)境變量中確定的目錄中進行查找。而一般情況下,我們把腳本文件都會獨立存放。所以,在使用Start命令執(zhí)行腳本文件的時候,***能夠注明腳本文件的絕對路徑名。防止語句執(zhí)行錯誤。

另外@命令也可以起到跟Start命令一樣的作用。只不過,前者的使用范圍更廣一點。@命令可以脫離SQL*PLUS工具而使用。如可以直接在微軟操作系統(tǒng)中的命令行方式下使用。當(dāng)然,這操作系統(tǒng)要事先部署了Oracle數(shù)據(jù)庫環(huán)境。

二是可以直接利用SQL*Plus工具打開文本文件,執(zhí)行腳本語句。然后點擊“文件”、“執(zhí)行”命令執(zhí)行這個腳本語句。這種方式的好處就是,系統(tǒng)會主動提示用戶需要輸入的參數(shù)。

不過筆者不怎么喜歡采用以上兩種方式。筆者一般是先利用腳本編輯器打開對應(yīng)的腳本文件。然后看看是否需要進行必要的更改。若不需要的話,就直接把這個語句復(fù)制粘貼到SQL*Plus工具中,執(zhí)行。如此的話,也就不用像Start那樣,指定腳本文件的具體位置了。

在執(zhí)行腳本語句的時候,特別需要注意一個參數(shù)的位置問題。從外界傳入的參數(shù),要跟腳本語句的替換參數(shù)一一對應(yīng)。如果參數(shù)的位置出現(xiàn)問題,則執(zhí)行的結(jié)果也就會有問題。

總之,腳本文件是我們管理Oracle數(shù)據(jù)庫的一大利器。我們好好利用腳本文件,可以提高Oracle數(shù)據(jù)庫的管理效率。畢竟,每次在需要的時候,都去編寫命令是一件很麻煩的事情。而腳本文件的***好處,就是可以提高語句的重復(fù)利用,節(jié)省我們編寫語句、調(diào)試測試的時間。

【編輯推薦】

  1. Oracle數(shù)據(jù)庫編寫有效事務(wù)指導(dǎo)方針
  2. Oracle中SQL語句的幾種用法
  3. 如何高效刪除Oracle數(shù)據(jù)庫中的重復(fù)數(shù)據(jù)
責(zé)任編輯:楊鵬飛 來源: nonetsky
相關(guān)推薦

2009-03-16 13:30:55

腳本數(shù)據(jù)字典Oracle

2010-11-15 15:06:58

ORACLE數(shù)據(jù)庫記錄

2011-03-03 13:17:43

Oracle數(shù)據(jù)庫

2011-03-25 10:26:34

Oracle數(shù)據(jù)庫管理表空間

2009-07-02 14:35:00

Oracle數(shù)據(jù)庫文件

2017-10-18 19:12:24

數(shù)據(jù)庫Oracle安全管理

2018-12-12 19:10:01

Oracle數(shù)據(jù)庫自動備份

2011-06-27 13:19:36

OMF托管文件ASM

2010-04-21 11:53:03

Oracle數(shù)據(jù)庫

2010-04-26 09:10:09

Oracle數(shù)據(jù)庫

2011-03-04 12:46:57

Oracle數(shù)據(jù)庫自動存儲管理(ASM)

2009-02-09 12:52:32

文件加密Oracle數(shù)據(jù)庫

2009-06-05 11:55:00

數(shù)據(jù)庫用戶管理數(shù)據(jù)導(dǎo)入導(dǎo)出

2010-03-31 10:39:40

RMANOracle

2009-05-19 10:10:01

Oracle時間加減時間操作

2009-11-19 17:25:12

Oracle數(shù)據(jù)庫物理

2010-05-06 12:44:47

Oracle數(shù)據(jù)庫

2011-03-17 16:35:20

Oracle數(shù)據(jù)庫段管理

2009-07-15 16:23:54

Java JDBC

2011-07-12 14:08:48

OracleODAC
點贊
收藏

51CTO技術(shù)棧公眾號