具體方法如下:
成都創(chuàng)新互聯(lián)公司專(zhuān)注于東城企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城系統(tǒng)網(wǎng)站開(kāi)發(fā)。東城網(wǎng)站建設(shè)公司,為東城等地區(qū)提供建站服務(wù)。全流程按需定制,專(zhuān)業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)公司專(zhuān)業(yè)和態(tài)度為您提供的服務(wù)
1、首先找到oracle并點(diǎn)擊鼠標(biāo)右鍵,以管理員身份運(yùn)行。
2、選擇創(chuàng)建新數(shù)據(jù)庫(kù)。
3、為新數(shù)據(jù)庫(kù)起個(gè)名字,其他沒(méi)提示一直點(diǎn)擊下一步。
4、添加口令。
5、選擇生成數(shù)據(jù)庫(kù)腳本。
6、生成成功。
倒數(shù)據(jù)的話(huà)不應(yīng)該包括本地盤(pán)符等信息吧。
一種是到處二進(jìn)制文件,另一種是到處腳本,比如一個(gè)xxx.sql
然后你在另外機(jī)器上運(yùn)行sqlplus,在里面輸入@xxx.sql就可以運(yùn)行該腳本了,如果不在一個(gè)目錄下需要指明腳本文件路徑。
為方便完成指定數(shù)據(jù)表的同步操作,可以采用dblink與merge結(jié)合的方法完成。
操作環(huán)境: 此數(shù)據(jù)庫(kù)服務(wù)器ip為192.168.196.76,有center與branch兩個(gè)庫(kù),一般需要將center的表數(shù)據(jù)同步到branch,center為源庫(kù),branch為目標(biāo)庫(kù),具體步驟如下:
1.在源庫(kù)創(chuàng)建到目標(biāo)庫(kù)的dblink
create database link branch???? --輸入所要?jiǎng)?chuàng)建dblink的名稱(chēng),自定義?? connect to dbuser identified by “password”? --設(shè)置連接遠(yuǎn)程數(shù)據(jù)庫(kù)的用戶(hù)名和密碼?? using '192.168.196.76/branch';? --指定目標(biāo)數(shù)據(jù)庫(kù)的連接方式,可用tns名稱(chēng)
在創(chuàng)建dblink時(shí),要注意,有時(shí)候可能會(huì)報(bào)用戶(hù)名和密碼錯(cuò)誤,但實(shí)際上我們所輸入的賬戶(hù)信息是正確的,此時(shí)就注意將密碼的大小寫(xiě)按服務(wù)器上所設(shè)置的輸入,并在賬號(hào)密碼前號(hào)加上雙引號(hào)(服務(wù)器版本不同造成的)。
2.成功后驗(yàn)證dblink
select * from tb_bd_action@branch; --查詢(xún)創(chuàng)建好的brach庫(kù)
正常情況下,如果創(chuàng)建dblink成功,可采用該方式訪(fǎng)問(wèn)到遠(yuǎn)程數(shù)據(jù)庫(kù)的表.
3.通過(guò)merge語(yǔ)句完成表數(shù)據(jù)同步
此例中需要將center庫(kù)中的tb_sys_sqlscripe表同步到branch,簡(jiǎn)單的語(yǔ)法如下:
merge into tb_sys_sqlscripe@branch b using tb_sys_sqlscripe c on (b.pk=c.pk)? --從center將表merge到branch,同步的依據(jù)是兩個(gè)表的pk
when matched then? update set b.sqlscripe=c.sqlscripe,b.author=c.author? --如果pk值是相同則將指定表的值更新到目標(biāo)表
when not matched then ? --如果pk值不一至,則將源表中的數(shù)據(jù)整條插入到目標(biāo)表中
insert values (c.pk, c.fk, c.createtime, c.lastmodifytime,c.author,c.module,c.deleteflag, c.scripttype);
commit;?????????????? --記得merge后必須commit,否則更改未能提交
4.為方便每次需要同步時(shí)自動(dòng)完成同步工作,可將該語(yǔ)句做成存儲(chǔ)過(guò)程或腳本來(lái)定時(shí)執(zhí)行或按要求手動(dòng)執(zhí)行,簡(jiǎn)單說(shuō)一下創(chuàng)建腳本的方法:
a.創(chuàng)建merge文件夾
b.先將merge語(yǔ)句寫(xiě)完整后,存到merge.sql文件中
c.新建merge.bat文件,編輯后寫(xiě)入以下內(nèi)容
sqlplus user/password@serverip/database @"%cd%\merge.sql"
批量插入數(shù)據(jù)腳本
1、第一種批量插入數(shù)據(jù)腳本,可以基本滿(mǎn)足要求。理解上較為簡(jiǎn)單,所以這個(gè)最常用。
NEXTVAL和CURRVAL的區(qū)別:
1、如果 sequence.CURRVAL 和 sequence.NEXTVAL 都出現(xiàn)在一個(gè) SQL 語(yǔ)句中,則序列只增加一次。在這種情況下,每個(gè) sequence.CURRVAL 和 sequence.NEXTVAL 表達(dá)式都返回相同的值,不管在語(yǔ)句中sequence.CURRVAL 和 sequence.NEXTVAL 的順序。
執(zhí)行腳本結(jié)果如下:
3、兩個(gè)表,同時(shí)批量插入數(shù)據(jù)的腳本
3、
4、 涉及子表時(shí),批量插入數(shù)據(jù)腳本,
5、 批量修改數(shù)據(jù) :
時(shí)間取數(shù)方式:
一、SYSTIMESTAMP(取當(dāng)前系統(tǒng)值)
二、SYSDATE(取當(dāng)前系統(tǒng)值,但只精確到時(shí),分和秒都為0)
三、固定值為:TO_TIMESTAMP ('2019-2-12 15:24:45.703000', 'yyyy-mm-dd hh24:mi:ss.ff6')
把固定的字段改為變量:
方式一:’||i||’ 例:’{“no”:“111’||i||’”}’(此方式)
方式二:concat 例:concat(concat(’{“blNo”:111"’,i),’"}’)
要在sql下面執(zhí)行shell語(yǔ)句,用!符號(hào),不過(guò)功能有限;有的時(shí)候打不到我們想要的效果!先給你兩個(gè)實(shí)例;
要在后臺(tái)登陸;plsql中測(cè)試不行
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, Data Mining and Real Application Testing options
SQL !echo 123;
123
SQL !/billing/user/xufc/
Local directory now /billing/Balance/SP/REALINCOME/FTRANS
Interactive mode off.
-rw-r--r-- 1 500 500 823038 Feb 17 06:27 340000PTSVDA002012021714210800000000.gz
-rw-r--r-- 1 500 500 33 Feb 17 06:27 340000PTSVDA002012021714210800000000.md5
其中需要用絕對(duì)路徑;該腳本里面的內(nèi)容只是ls一下;就這樣了
分享標(biāo)題:oracle怎么用腳本,oracle運(yùn)行sql腳本
當(dāng)前路徑:http://chinadenli.net/article12/hessdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、虛擬主機(jī)、網(wǎng)站排名、網(wǎng)站設(shè)計(jì)、關(guān)鍵詞優(yōu)化、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容