亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁(yè) > 知識(shí)庫(kù) > Oracle基礎(chǔ):通過(guò)sqlplus執(zhí)行sql語(yǔ)句后的結(jié)果進(jìn)行判斷

Oracle基礎(chǔ):通過(guò)sqlplus執(zhí)行sql語(yǔ)句后的結(jié)果進(jìn)行判斷

熱門(mén)標(biāo)簽:海南400電話哪里辦理 南寧人工智能電銷(xiāo)機(jī)器人費(fèi)用 圖像地圖標(biāo)注 分布式呼叫中心 濟(jì)南地圖標(biāo)注公司 呼倫貝爾智能手機(jī)地圖標(biāo)注 400電話是不是免費(fèi)申請(qǐng) 安陽(yáng)外呼系統(tǒng)免費(fèi) 貴陽(yáng)電話外呼系統(tǒng)哪家好

這篇文章介紹一下如何對(duì)sqlplus執(zhí)行的sql語(yǔ)句結(jié)果進(jìn)行判斷。

環(huán)境準(zhǔn)備

使用Oracle的精簡(jiǎn)版創(chuàng)建docker方式的demo環(huán)境,詳細(xì)可參看:

 https://www.jb51.net/article/153533.htm

常見(jiàn)問(wèn)題

在sqlplus中執(zhí)行sql語(yǔ)句,如果直接使用命令行的方式調(diào)用時(shí)會(huì)碰到兩個(gè)問(wèn)題:

  • 問(wèn)題1: 需要進(jìn)行交互性的輸入
  • 問(wèn)題2:結(jié)果的判斷不能通過(guò)返回值來(lái)確認(rèn)

解決方式

在腳本調(diào)用里,解決方式如下

  • 問(wèn)題1可以通過(guò)前文提到的Here Document來(lái)解決。
  • 問(wèn)題2,則可以通過(guò)對(duì)輸出的判斷來(lái)進(jìn)行,因?yàn)镺racle的錯(cuò)誤代碼基本以O(shè)RA-打頭,所以根據(jù)輸出中是否包含ORA-,基本可確認(rèn)是否存在錯(cuò)誤。

執(zhí)行結(jié)果判斷示例

這里使用命令行的方式進(jìn)行驗(yàn)證,直接拷貝到腳本中即可以使用腳本的方式與sqlplus進(jìn)行集成。

oracle@e871d42341c0:~$ sqlplus system/liumiao123@XE EOF
> desc student
> delete from student;
> select * from student;
> insert into student values (1001, 'liumiaocn');
> insert into student values (1001, 'liumiao');
> insert into student values (1003, 'michael');
> commit;
> select * from student;
> EOF
SQL*Plus: Release 11.2.0.2.0 Production on Mon Oct 22 05:18:51 2018
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> Name  Null? Type
 ----------------------------------------- -------- ----------------------------
 STUID  NOT NULL NUMBER(4)
 STUNAME   VARCHAR2(50)
SQL> 
3 rows deleted.
SQL> 
no rows selected
SQL> 
1 row created.
SQL> insert into student values (1001, 'liumiao')
*
ERROR at line 1:
ORA-00001: unique constraint (SYSTEM.SYS_C007024) violated
SQL> 
1 row created.
SQL> 
Commit complete.
SQL> 
  STUID STUNAME
---------- --------------------------------------------------
  1001 liumiaocn
  1003 michael

SQL> Disconnected from Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
oracle@e871d42341c0:~$ echo $?
0
oracle@e871d42341c0:~$

從上文可以看到,三行insert的sql語(yǔ)句由于第二行的主鍵重復(fù),出現(xiàn)錯(cuò)誤,但是最終的結(jié)果使用命令行的方式無(wú)法對(duì)結(jié)果進(jìn)行判斷,這是控制臺(tái)方式的常見(jiàn)場(chǎng)景,比如sftp或者ftp等也有此特點(diǎn),一般常用的對(duì)應(yīng)方式無(wú)法通過(guò)返回值進(jìn)行判斷,只能通過(guò)輸出來(lái)進(jìn)行判斷。

輸出信息

輸出分為標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤兩種,輸入輸出的FD分別為:

  • 標(biāo)準(zhǔn)輸入:0
  • 標(biāo)準(zhǔn)輸出:1
  • 標(biāo)準(zhǔn)錯(cuò)誤:2

接下來(lái)我們看一下上文中的信息那些是標(biāo)準(zhǔn)輸出,哪些是標(biāo)準(zhǔn)錯(cuò)誤:

oracle@e871d42341c0:~$ sqlplus system/abcd1234@XE EOF 2>output.error 1>output.info
> desc student
> delete from student;
> select * from student;
> insert into student values (1001, 'liumiaocn');
> insert into student values (1001, 'liumiao');
> insert into student values (1003, 'michael');
> commit;
> select * from student;
> EOF
oracle@e871d42341c0:~$ 
oracle@e871d42341c0:~$ cat output.error
oracle@e871d42341c0:~$ 
oracle@e871d42341c0:~$ cat output.info
SQL*Plus: Release 11.2.0.2.0 Production on Mon Oct 22 05:24:44 2018
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> Name  Null? Type
 ----------------------------------------- -------- ----------------------------
 STUID  NOT NULL NUMBER(4)
 STUNAME   VARCHAR2(50)
SQL> 
2 rows deleted.
SQL> 
no rows selected
SQL> 
1 row created.
SQL> insert into student values (1001, 'liumiao')
*
ERROR at line 1:
ORA-00001: unique constraint (SYSTEM.SYS_C007024) violated
SQL> 
1 row created.
SQL> 
Commit complete.
SQL> 
  STUID STUNAME
---------- --------------------------------------------------
  1001 liumiaocn
  1003 michael
SQL> Disconnected from Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
oracle@e871d42341c0:~$ 

可以看到錯(cuò)誤信息全在標(biāo)準(zhǔn)輸出中,標(biāo)準(zhǔn)錯(cuò)誤中沒(méi)有信息。

重定向標(biāo)準(zhǔn)輸出與錯(cuò)誤判斷

雖然上述信息中可以看到,標(biāo)準(zhǔn)錯(cuò)誤中沒(méi)有信息,這里給出的方案是對(duì)應(yīng)常見(jiàn)的控制臺(tái)方式的錯(cuò)誤控制,為了保證標(biāo)準(zhǔn)錯(cuò)誤的信息不被遺漏,需要將標(biāo)準(zhǔn)錯(cuò)誤和重定向到標(biāo)準(zhǔn)輸出中,在bshell中寫(xiě)法如下:

>輸出文件名稱(chēng) 2>1

結(jié)合本文的例子,使用方式如下:

oracle@e871d42341c0:~$ sqlplus system/abcd1234@XE EOF >output.info 2>1
> desc student
> delete from student;
> select * from student;
> insert into student values (1001, 'liumiaocn');
> insert into student values (1001, 'liumiao');
> insert into student values (1003, 'michael');
> commit;
> select * from student;
> EOF
oracle@e871d42341c0:~$ 
oracle@e871d42341c0:~$ cat output.info
SQL*Plus: Release 11.2.0.2.0 Production on Mon Oct 22 05:29:31 2018
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> Name  Null? Type
 ----------------------------------------- -------- ----------------------------
 STUID  NOT NULL NUMBER(4)
 STUNAME   VARCHAR2(50)
SQL> 
2 rows deleted.
SQL> 
no rows selected
SQL> 
1 row created.
SQL> insert into student values (1001, 'liumiao')
*
ERROR at line 1:
ORA-00001: unique constraint (SYSTEM.SYS_C007024) violated
SQL> 
1 row created.
SQL> 
Commit complete.
SQL> 
  STUID STUNAME
---------- --------------------------------------------------
  1001 liumiaocn
  1003 michael
SQL> Disconnected from Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
oracle@e871d42341c0:~$

結(jié)果判斷

使用grep確認(rèn)是否存在ORA-相關(guān)的信息即可

oracle@e871d42341c0:~$ grep ORA- output.info
ORA-00001: unique constraint (SYSTEM.SYS_C007024) violated
oracle@e871d42341c0:~$ echo $?
0
oracle@e871d42341c0:~$

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

您可能感興趣的文章:
  • Oracle SQLPlus導(dǎo)出數(shù)據(jù)到csv文件的方法
  • Oracle通過(guò)sqlplus連接數(shù)據(jù)庫(kù)的方式
  • Oracle基礎(chǔ):程序中調(diào)用sqlplus的方式
  • 使用sqlplus命令行工具為oracle創(chuàng)建用戶和表空間
  • oracle11g管理員密碼忘記怎么辦 sqlplus解決忘記密碼問(wèn)題
  • Linux下Oracle中SqlPlus時(shí)上下左右鍵亂碼問(wèn)題的解決辦法
  • oracle 中 sqlplus命令大全
  • Oracle Sqlplus命令登錄多種方式案例講解

標(biāo)簽:涼山 南充 合肥 焦作 滁州 遼源 郴州 許昌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Oracle基礎(chǔ):通過(guò)sqlplus執(zhí)行sql語(yǔ)句后的結(jié)果進(jìn)行判斷》,本文關(guān)鍵詞  Oracle,基礎(chǔ),通過(guò),sqlplus,執(zhí)行,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Oracle基礎(chǔ):通過(guò)sqlplus執(zhí)行sql語(yǔ)句后的結(jié)果進(jìn)行判斷》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于Oracle基礎(chǔ):通過(guò)sqlplus執(zhí)行sql語(yǔ)句后的結(jié)果進(jìn)行判斷的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    亚洲 欧美 91| 可以免费看毛片的网站| 日韩一级黄色片| 国产伦久视频免费观看 视频| 精品在线观看国产| 成人影院一区二区三区| 欧美国产日韩在线| 国产91素人搭讪系列天堂| 美国一区二区三区| 99久久精品国产麻豆| 国产一级强片在线观看| 国产91视频网| 欧美大片aaaa一级毛片| 精品视频在线观看免费| 欧美电影免费看大全| 国产一区二区福利久久| 你懂的日韩| 国产一区二区高清视频| 麻豆系列国产剧在线观看| 日韩av片免费播放| 欧美一区二区三区性| 精品国产一区二区三区久久久狼| 国产亚洲精品aaa大片| 一级毛片视频在线观看| 999精品视频在线| 可以免费在线看黄的网站| 欧美激情一区二区三区在线播放| 日日日夜夜操| 色综合久久天天综合| 成人a大片高清在线观看| 成人a级高清视频在线观看| 国产福利免费观看| 青青久久精品| 国产极品白嫩美女在线观看看| 欧美电影免费| 四虎精品在线观看| 国产原创视频在线| 成人影院久久久久久影院| 久久99中文字幕| 国产高清视频免费| 国产麻豆精品hdvideoss| 欧美1卡一卡二卡三新区| 国产成人啪精品视频免费软件| 黄视频网站免费看| 免费国产在线观看| 色综合久久手机在线| 天天做日日爱夜夜爽| 日本伦理片网站| 欧美激情一区二区三区视频高清| 日韩在线观看视频黄| 欧美1区| 九九热精品免费观看| 国产原创视频在线| 国产激情视频在线观看| 国产极品白嫩美女在线观看看| 欧美国产日韩久久久| 国产亚洲精品aaa大片| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 中文字幕Aⅴ资源网| 国产精品自拍在线观看| 日本伦理黄色大片在线观看网站| 国产国产人免费视频成69堂| 日本免费区| 国产视频一区二区在线播放| 精品视频在线观看一区二区| 日韩中文字幕一区| 国产麻豆精品高清在线播放| 亚洲第一视频在线播放| 久久国产精品自线拍免费| 精品美女| 亚洲天堂在线播放| 香蕉视频久久| 国产福利免费观看| 香蕉视频三级| 日韩中文字幕一区| 国产一区二区高清视频| 亚洲第一页乱| a级精品九九九大片免费看| 国产麻豆精品| 二级片在线观看| 国产一级强片在线观看| 韩国毛片基地| 国产网站免费在线观看| 91麻豆精品国产自产在线| 999久久久免费精品国产牛牛| 国产成人精品影视| 精品国产一区二区三区免费| 91麻豆精品国产综合久久久| 天天色成人| 日本在线不卡免费视频一区| 国产不卡在线播放| 你懂的日韩| 麻豆系列 在线视频| 国产不卡在线观看| 久久国产影视免费精品| 亚洲 欧美 91| 国产欧美精品| 日本特黄特色aa大片免费| 韩国毛片 免费| 免费毛片播放| 成人影院一区二区三区| 91麻豆国产级在线| 色综合久久天天综线观看| 日韩av片免费播放| 日本免费区| 国产成a人片在线观看视频| 日韩专区亚洲综合久久| 日韩中文字幕一区| 精品视频在线观看一区二区| 免费国产在线观看| a级毛片免费观看网站| 国产一区二区精品久久91| 九九免费精品视频| 国产高清视频免费观看| 色综合久久手机在线| 国产精品12| 国产91精品系列在线观看| 可以免费看污视频的网站| 欧美电影免费| 成人影院一区二区三区| 亚欧成人毛片一区二区三区四区| 成人免费观看网欧美片| 国产伦精品一区二区三区在线观看| 成人a大片高清在线观看| 成人a大片在线观看| 国产不卡在线观看| 一级毛片视频免费| 国产不卡在线看| 日本伦理网站| 久久久成人影院| 免费国产在线观看| 欧美a级大片| 久久精品欧美一区二区| 精品久久久久久免费影院| 国产国产人免费视频成69堂| 国产视频久久久| 精品国产三级a∨在线观看| 午夜家庭影院| 欧美日本免费| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产成a人片在线观看视频| 九九免费高清在线观看视频| 国产伦久视频免费观看 视频 | 久草免费在线视频| 91麻豆爱豆果冻天美星空| 久久精品欧美一区二区| 一级毛片视频免费| 精品毛片视频| 天天做人人爱夜夜爽2020| 日本伦理片网站| 久久99爰这里有精品国产| 亚洲 欧美 91| 日本特黄特色aaa大片免费| 精品国产一区二区三区久| 欧美一级视| 国产a网| 天天做人人爱夜夜爽2020毛片| 精品视频在线观看视频免费视频| 国产一区二区精品在线观看| 欧美a免费| 国产视频在线免费观看| 日韩在线观看免费完整版视频| 国产亚洲精品aaa大片| 国产国产人免费视频成69堂| 色综合久久手机在线| 午夜久久网| 99久久网站| 一级女性全黄久久生活片| 久久国产精品自线拍免费| 沈樵在线观看福利| 国产激情视频在线观看| 国产成+人+综合+亚洲不卡| 91麻豆爱豆果冻天美星空| 日韩专区在线播放| 久久国产影视免费精品| 天天做人人爱夜夜爽2020| 午夜在线影院| a级毛片免费观看网站| 91麻豆爱豆果冻天美星空| 国产一区精品| 香蕉视频一级| 免费毛片播放| 国产福利免费观看| 日韩一级黄色| 国产原创视频在线| 国产福利免费观看| 国产一区国产二区国产三区| 国产视频久久久久| 一级女性大黄生活片免费| 91麻豆精品国产综合久久久| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 一级毛片看真人在线视频| 精品国产一区二区三区久| 日韩一级精品视频在线观看| 日韩专区在线播放| 日韩在线观看免费完整版视频| 精品久久久久久中文| 四虎影视久久久| 99久久精品国产高清一区二区| 欧美a级片视频|