怎樣快速解決ORACLE“ORA-01722:無效數字”報錯
簡介:
數據庫處理的時候,我們經過會用到數據庫觸發器。觸發器在調試的時候,由於程序邏輯、數據類型、數據庫環境等,出現各種數據庫觸發器報錯的情況。
今天給大家介紹一個像我這樣初學ORACLE數據庫觸發器編程過程中,遇到的ORACLE數據庫“ORA-01722:無效數字”報錯,以及解決該問題的過程。
操作方法
(01)步驟一:觸發器功能背景描述。我寫的存儲過程的目的是,實現當在數據庫中插入一條記錄的時候,將汽車編號的數據庫代碼轉換爲實際的汽車的名稱。1、汽車表:包括ID,NUMBER(2)和NAME(VARCHAR2(8))字段,實現將實際的車號和數據庫處理的車號的對應。2、汽車稱重表:包括序號HEATID(VARCHAR2)、時間CHAREGE_TIME(DATE)、實際車號CRANEID(VARCHAR2(8))。3、觸發器:實現實際車號和數據庫系統車號轉換功能。
(02)步驟二、開啟汽車車輛表,輸入按照序號條件進行查詢的SQL語句,如下圖。鼠標左鍵選中記錄行1左邊的黑色箭頭,使用Ctrl+C進行複製操作,將該條數據複製到粘貼板。
(03)步驟三:鼠標左鍵選中小HEATID上邊的小鎖子,開啟編輯功能,使用粘貼功能進行粘貼,剛纔選中的數據被粘貼到數據表的第二行中,修改HEATID汽車編號爲160700000。
(04)步驟四:鼠標左鍵選中小勾,然後按F1執行,系統報錯。報錯介面顯示“ORA-01722:無效數字”報錯,點擊Yes按鈕,跳轉到觸發器編輯調試介面。
(05)步驟五:檢視觸發器介面,紅色字型黃色背景的語句爲錯誤所在部位。由於程序報無效數字,重點關注表中字段數據類型,程序中涉及到從車輛表crane_ID讀取name數據,複製給craneid,重點關注craneid,檢查發現craneid的數據類型爲CRANEID(VARCHAR2(8)),我們在數據庫中的數值爲“7”,爲number類型,數據類型不一致,問題所在找到了。怎麼解決呢?下一步進行操作解決。
(06)步驟六:根據汽車表數據對應關係,將ceaneid字段的7,按照對應關係,修改爲26#,點擊小鎖子進行編輯,按F8執行,數據成功插入,觸發器沒有報錯,問題解決。
特別提示
注意:“ORA-01722:無效數字”報錯只是一個很小的報錯提示,以上只是我這個初學ORACLE數據庫的人員,遇到的問題,希望能幫到大家。
ORACLE數據庫報錯有多種類型,當觸發器報錯的時候,我們找到ORACLE報錯資料,按照資料提示進行操作。
-
MATLAB使用importdata讀取字元數據檔案並繪圖
本文首先使用importdata()讀取(匯入)含有字元和數據的文字格式數據檔案,然後介紹透過“.”+數據名的方式讀取結構數組中的數據,最後使用plot()繪製折線圖。操作方法(01)第一,首先準備數據,下圖txt數據檔案是某年12個月的月收入情況,既包含數字又包含字元。(02)第二,將該數...
-
framework3.5怎麼安裝
framework3.5是一個框架,主要功能是多語言組件的開發以及執行環境,下面說說怎麼安裝以供參考:操作方法(01)首先在瀏覽中輸入framework3.5,在網頁結果中點擊普通下載。(02)下載好之後雙擊開啟,等待軟件加載組件程序。(03)之後再選擇我已經閱讀並接受許可協議中的條款,再點擊...
-
百度地圖檢視座標
操作方法(01)首先,電腦開啟搜狗瀏覽器,進入百度官網。(02)在上邊我們點擊百度地圖的按鈕。(03)進入地圖上,可以看到當前自己所在城市。(04)點擊地圖下方的“地圖開發平臺”按鈕。(05)在地圖開放平臺頁面,點擊:開發文檔——座標拾取器。(06)然後在地圖中,隨意點擊一個位置,就可以查...
-
參考文獻在文中怎麼標註(word)
(尾註添加方法)在文章中標註參考文獻,還在一個一個慢慢敲嗎?看看用word怎麼快速實現吧。這裏以word2003爲例。操作方法(01)遊標移到要加入參考文獻標註的地方(02)選單中“插入”——“引用”——“腳註和尾註”(03)如圖設定(04)確定後在該處就插入了一個上標“1”,而遊標...