十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
oracle導(dǎo)入數(shù)據(jù)庫報(bào)錯(cuò),提示遇到oracle錯(cuò)誤12154的解決方法如下:
成都創(chuàng)新互聯(lián)公司為您提適合企業(yè)的網(wǎng)站設(shè)計(jì)?讓您的網(wǎng)站在搜索引擎具有高度排名,讓您的網(wǎng)站具備超強(qiáng)的網(wǎng)絡(luò)競(jìng)爭(zhēng)力!結(jié)合企業(yè)自身,進(jìn)行網(wǎng)站設(shè)計(jì)及把握,最后結(jié)合企業(yè)文化和具體宗旨等,才能創(chuàng)作出一份性化解決方案。從網(wǎng)站策劃到成都做網(wǎng)站、網(wǎng)站建設(shè), 我們的網(wǎng)頁設(shè)計(jì)師為您提供的解決方案。
1、首先,在桌面找到計(jì)算機(jī)圖標(biāo),右鍵點(diǎn)擊選擇屬性:
2、然后,在彈出的窗口中選擇高級(jí)系統(tǒng)設(shè)置,并點(diǎn)擊:
3、之后,在彈出的對(duì)話框中選擇,環(huán)境變量:
4、接著,添加兩個(gè)環(huán)境變量,分別是:oracle_home和oracle_sid和oracle_home:
5、最后,添加完成之后顯示已經(jīng)成功ping通,這樣就能順利的連接oracle了。到此,oracle導(dǎo)入數(shù)據(jù)庫報(bào)錯(cuò)的問題就被解決了:
安裝Oracle時(shí)
11版本顯示不滿足要求
在解壓后的Oracle安裝文件目錄中,找到 stage\cvu\cvu_prereq.xml 文件
如果是64位的?
打開【cvu_prereq.xml】文件,找到value=windows 7的OPERATING_SYSTEM段,復(fù)制整段,并修改Release = 6.2, value = windows 10;如下:
OPERATING_SYSTEM RELEASE="6.2"
? ? ? VERSION VALUE="3"/
? ? ? ARCHITECTURE VALUE="64-bit"/
? ? ? NAME VALUE="Windows 10"/
? ? ? ENV_VAR_LIST
? ? ? ? ? ?ENV_VAR NAME="PATH" MAX_LENGTH="1023" /
? ? ? /ENV_VAR_LIST
/OPERATING_SYSTEM
如果32位
打開【cvu_prereq.xml】文件,找到value=windows 7的OPERATING_SYSTEM段,復(fù)制整段,并修改Release = 6.2, value = windows 10;如下:
OPERATING_SYSTEM RELEASE="6.2"
? ? ? VERSION VALUE="3"/
? ? ? ARCHITECTURE VALUE="32-bit"/
? ? ? NAME VALUE="Windows 10"/
? ? ? ENV_VAR_LIST
? ? ? ? ? ?ENV_VAR NAME="PATH" MAX_LENGTH="1023" /
? ? ? /ENV_VAR_LIST
/OPERATING_SYSTEM
或者?
無法在節(jié)點(diǎn)上執(zhí)行物理內(nèi)存檢查
安裝Oracle 11g r2出現(xiàn)如下錯(cuò)誤:
//物理內(nèi)存
物理內(nèi)存 - 此先決條件將測(cè)試系統(tǒng)物理內(nèi)存總量是否至少為 922MB (944128.0KB)。
預(yù)期值
: N/A
實(shí)際值
: N/A
錯(cuò)誤列表:
//可用物理內(nèi)存
PRVF-7531 : 無法在節(jié)點(diǎn) "LENOVO-F4F9938F" 上執(zhí)行物理內(nèi)存檢查 - Cause: 無法在指示的節(jié)點(diǎn)上執(zhí)行物理內(nèi)存檢查。 - Action: 確保可以訪問指定的節(jié)點(diǎn)并可以查看內(nèi)存信息。
可用物理內(nèi)存 - 此先決條件將測(cè)試系統(tǒng)可用物理內(nèi)存是否至少為 50MB (51200.0KB)。
預(yù)期值
: N/A
實(shí)際值
: N/A
錯(cuò)誤列表:
-
PRVF-7563 : 無法在節(jié)點(diǎn) "LENOVO-F4F9938F" 上執(zhí)行可用內(nèi)存檢查 - Cause: 無法在指示的節(jié)點(diǎn)上執(zhí)行可用內(nèi)存檢查。 - Action: 確??梢栽L問指定的節(jié)點(diǎn)并可以查看內(nèi)存信息。
//交換空間大小
交換空間大小 - 此先決條件將測(cè)試系統(tǒng)是否具有足夠的總交換空間。
預(yù)期值
: N/A
實(shí)際值
: N/A
錯(cuò)誤列表:
-
PRVF-7574 : 無法在節(jié)點(diǎn) "LENOVO-F4F9938F" 上執(zhí)行交換空間大小檢查 - Cause: 無法在指示的節(jié)點(diǎn)上執(zhí)行交換空間檢查。 - Action: 確??梢栽L問指定的節(jié)點(diǎn)并可以查看交換空間信息。
-
PRVF-7531 : 無法在節(jié)點(diǎn) "LENOVO-F4F9938F" 上執(zhí)行物理內(nèi)存檢查 - Cause: 無法在指示的節(jié)點(diǎn)上執(zhí)行物理內(nèi)存檢查。 - Action: 確保可以訪問指定的節(jié)點(diǎn)并可以查看內(nèi)存信息。
解決方法:
1. 在命令提示符下 net share c$=c:
補(bǔ)充
如果這個(gè)命令提示錯(cuò)誤:“發(fā)生系統(tǒng)錯(cuò)誤 5,拒絕訪問的時(shí)候”,那我們可以修改注冊(cè)表,檢查AutoShareServer和AutoShareWks注冊(cè)表值,以確保未將它們?cè)O(shè)置為0,讓C盤進(jìn)行共享。
步驟:
1.依次點(diǎn)擊“開始→運(yùn)行”,輸入regedit,然后按回車鍵進(jìn)入注冊(cè)表編輯器。
2.找到并單擊HKEY_LOCAL_MACHINE--System--CurrentControlSet--Services--LanmanServer--Parameters,將AutoShareServer和AutoShareWks的值改為1。
補(bǔ)充:如果沒有AutoShareServer和AutoShareWks? 創(chuàng)建這兩個(gè)
創(chuàng)建完成之后把 數(shù)值改為1
3.重啟電腦。再次運(yùn)行net share ,顯示結(jié)果如圖即可:
在做報(bào)表系統(tǒng)的過程中,遇到了一個(gè)很有意思的問題,就是Oracle報(bào)了一個(gè)錯(cuò) java.sql.SQLException: ORA-01722: 無效數(shù)字 ,正常來說,報(bào)該錯(cuò)就意味著數(shù)據(jù)類型不匹配,但是因?yàn)橥籹ql語句,多加了一個(gè)條件,就查出結(jié)果,不加條件,反而報(bào)錯(cuò),所以就意味著,可能數(shù)據(jù)有誤(或者語句有誤),但是哪一條數(shù)據(jù)有誤,肉眼難以識(shí)別!
有一個(gè)機(jī)構(gòu)表,存10個(gè)機(jī)構(gòu), is_use=‘0’ 意味著無效,不統(tǒng)計(jì), is_use=‘1’ 意味著有效,參與統(tǒng)計(jì),先看sql:
這個(gè)是公共的sql部分,往后添加條件,即可查相應(yīng)結(jié)果:
查昆明能查出結(jié)果,但是查云南的時(shí)候,就報(bào)錯(cuò),所以一怒之下,把ynCheckSql語句結(jié)果查出來,一條一條檢驗(yàn),還真發(fā)現(xiàn)了問題:
針對(duì)德宏這一個(gè)地方,查詢的時(shí)候報(bào)了 ORA-01722: 無效數(shù)字 錯(cuò)誤,仔細(xì)查看數(shù)據(jù)源,發(fā)現(xiàn)數(shù)據(jù)也沒什么問題,因?yàn)橛?jì)算過程中,會(huì)報(bào)除數(shù)不能為0的錯(cuò),而該條數(shù)據(jù)有一個(gè)值( 該值是分母,也就是除數(shù) ),我們都知道,除數(shù)不能為0,所以O(shè)racle針對(duì)除數(shù)為0的情況,有一個(gè)函數(shù):
所以為了直接返回結(jié)果,除數(shù)為0時(shí)直接返回 - 如這個(gè)sql語句: ROUND(DECODE(ba.personal_plan,0,'-',(r.p5_year_inc+r.p6_year_inc+r.p7_year_inc+r.p8_year_inc+r.p9_year_inc+r.p10_year_inc)/ba.personal_plan*100),3) perPlan
我們都知道ROUND函數(shù)是保留小數(shù)位數(shù),如果返回 - ,ROUND函數(shù)肯定會(huì)包無效數(shù)字錯(cuò)誤,所以如果除數(shù)為0,直接返回特殊字符9999即可,后面再對(duì)9999進(jìn)行單獨(dú)處理!!
oracle錯(cuò)誤:ORA-00920: 無效的關(guān)系運(yùn)算符是運(yùn)算符使用錯(cuò)誤造成的,解決方法為:
1、雙擊plsql developer軟件,進(jìn)行連接數(shù)據(jù)庫。
2、在命令窗口中先進(jìn)行簡(jiǎn)單查詢,并不進(jìn)行限定查詢,如下圖。
3、限定查詢其實(shí)就是where子句,邏輯運(yùn)算符就是and or not,在查詢的時(shí)候?qū)敵鼋Y(jié)果進(jìn)行定制查詢,因?yàn)楫?dāng)表的數(shù)據(jù)量非常大的時(shí)候,直接使用簡(jiǎn)單查詢有效率會(huì)非常的低,特別在是查詢大表數(shù)據(jù)的時(shí)候,如下圖查看sh用戶下其中一張表的數(shù)據(jù)。
4、因?yàn)閿?shù)據(jù)量非常的大所以在查詢的時(shí)候非常有必要進(jìn)行限定查詢,在限定查詢的時(shí)候條件盡量要精確,如下圖因?yàn)闂l件不太精確導(dǎo)致查詢的時(shí)候也非常的長(zhǎng)。
5、同時(shí)在進(jìn)行限定查詢的時(shí)候可以使用and or not等運(yùn)算符,如下圖可以看到在使用了邏輯運(yùn)算符之后查詢數(shù)據(jù)更加精確,效率也更高效,在使用and的時(shí)候要求兩邊的條件都必須滿足才可以。
6、在使用邏輯運(yùn)算符or的時(shí)候,只要兩邊的條件有一個(gè)滿足就可以進(jìn)行相應(yīng)的查詢,如下圖。
Oracle查詢報(bào)錯(cuò):ora-01821 Date format not recognized是設(shè)置錯(cuò)誤造成的,解決方法為:
1、登錄ORACLE數(shù)據(jù)庫,在服務(wù)器使用tnsping gshx2cs。
2、TNS的配置文件為tnsnames.ora,目錄一般為$ORACLE_HOME/network/admin
3、按照如圖格式修改TNS串,配置對(duì)應(yīng)的ip,端口以及實(shí)例名。
4、修改后重新測(cè)試,發(fā)現(xiàn)實(shí)例已經(jīng)可以正常解析。