Oracle關聯查詢-數據類型不一致問題 ORA-01722: 無效數字

一、存在表A和表B,都包含字段user_no,但數據類型不一致,如下:

create table A (

  user_id varchar2(20),

  user_no number(12,0),

  xxx

);

create table B (

  user_name varchar2(60),

  user_no varchar2(20),

  xxx

);

?

二、現有某項業務需要用到A.user_id和B.user_name,通過user_no來做關聯查詢,如下:

select A.user_id,B.user_name from A,B where A.user_no=B.user_no;

select A.user_id,B.user_name from A,B where A.user_no=B.user_no and A.user_no='1234567';

?

三、問題:

1.當A.user_no和B.user_no全部為數字類型時,以上腳本是沒有問題的;

2.當B.user_no的某一個或多個值包含非數字字符時,該腳本會報:ORA-01722: 無效數字

?

四、原因:

深層次原因待后續分析。

?

五、反思:

1.最根本的,應該避免不同表同一字段的數據類型不一致;

2.關聯查詢時增加數據類型轉換,如:select A.user_id,B.user_name from A,B where to_char(A.user_no)=B.user_no;

3.如果項目中已經存在這種情況,應該確保varchar2類型的字段不會包含非數字字符。

轉載于:https://www.cnblogs.com/yuhebin/p/10949683.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/536428.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/536428.shtml
英文地址,請注明出處:http://en.pswp.cn/news/536428.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

1096: 字符逆序

1096: 字符逆序 Time Limit: 1 Sec Memory Limit: 64 MB Submit: 2017 Solved: 1059 [Submit][Status][Web Board] Description 將一個字符串str的內容顛倒過來,并輸出。str的長度不超過100個字符。 Input 輸入包括一行。 第一行輸入的字符串。 Output 輸出…

Ajax_Apache訪問資源文件的權限配置、資源存放路徑配置、配置虛擬主機、動態網站靜態網站區別...

1、配置資源的訪問權限 修改配置文件:httpd.conf 文件 改完之后要重啟 2、切換資源默認存放目錄www 修改配置文件httpd.conf 文件中的存放目錄 3、Apache是否能夠同時支持多個站點 Apache能否支持通過不同的域名訪問不同的站點 可以 做法:配置虛擬主機…

Public Sale【博弈】

Public Sale Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 10573 Accepted Submission(s): 6257 Problem Description 雖然不想,但是現實總歸是現實,Lele始終沒有逃過退學的命運&am…

Being a Good Boy in Spring Festival【博弈】

Being a Good Boy in Spring Festival Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 8876 Accepted Submission(s): 5446 Problem Description 一年在外 父母時刻牽掛 春節回家 你能做幾天好孩子嗎 寒假里…

web安全之文件上傳漏洞攻擊與防范方法

2019獨角獸企業重金招聘Python工程師標準>>> 一、 文件上傳漏洞與WebShell的關系 文件上傳漏洞是指網絡攻擊者上傳了一個可執行的文件到服務器并執行。這里上傳的文件可以是木馬,病毒,惡意腳本或者WebShell等。這種攻擊方式是最為直接和有效的…

Rabbit and Grass【博弈】

Rabbit and Grass Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 4728 Accepted Submission(s): 3592 Problem Description 大學時光是浪漫的,女生是浪漫的,圣誕更是浪漫的&#xff…

蘋果可彎曲屏幕新專利獲準,折疊iPhone最快2020年現身?

當三星Galaxy Fold、華為Mate X等折疊手機陸續問世時,所有果粉都想問一個問題折疊iPhone在哪里?就在最近有報導指出,蘋果獲得一項關于折疊屏幕的新專利。新專利出爐,但折疊iPhone還要再等等。本周二,美國專利與商標局授…

Brave Game【博弈】

Brave Game Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 14813 Accepted Submission(s): 10086 Problem Description 十年前讀大學的時候,中國每年都要從國外引進一些電影大片,其中…

Google File System 學習筆記

GFS翻譯:https://www.cnblogs.com/cxxjohnson/p/4984309.html 一、GFS架構: 二、保存文件的方式 1、保存小文件:磁盤中分塊,每個block大小為1024Byte,每個文件的索引由塊號偏置組成 2、保存大文件:把block換成chunk,每…

探討奇技淫巧

2019獨角獸企業重金招聘Python工程師標準>>> 探討奇技淫巧 起源 在工程實踐中,我們常常會遇到一些奇技淫巧。所謂奇技淫巧,就是官方在設計或者實踐中并未想象出的代碼風格或者使用場景。其實也就是類似于 react 的 hoc,本來源自于社區&#x…

悼念512汶川大地震遇難同胞——選拔志愿者【博奕】

悼念512汶川大地震遇難同胞——選拔志愿者 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 11716 Accepted Submission(s): 7537 Problem Description 對于四川同胞遭受的災難,全國人民紛紛伸出援…

mall整合SpringBoot+MyBatis搭建基本骨架

本文主要講解mall整合SpringBootMyBatis搭建基本骨架,以商品品牌為例實現基本的CRUD操作及通過PageHelper實現分頁查詢。 mysql數據庫環境搭建 下載并安裝mysql5.7版本,下載地址:dev.mysql.com/downloads/i…設置數據庫帳號密碼:r…

Web框架之Django_01初識(三大主流web框架、Django安裝、Django項目創建方式及其相關配置、Django基礎三件套:HttpResponse、render、redirect)...

摘要: Web框架概述 Django簡介 Django項目創建 Django基礎必備三件套(HttpResponse、render、redirect) 一、Web框架概述: Python三大主流Web框架: Django:大而全,自帶了很多功能模塊,類似于航空母艦&am…

Bone Collector【01背包】

F - Bone Collector HDU - 2602 Many years ago , in Teddy’s hometown there was a man who was called “Bone Collector”. This man like to collect varies of bones , such as dog’s , cow’s , also he went to the grave … The bone collector had a big bag wit…

Gamma階段第八次scrum meeting

每日任務內容 隊員昨日完成任務明日要完成的任務張圓寧#91 用戶體驗與優化https://github.com/rRetr0Git/rateMyCourse/issues/91(持續完成)#91 用戶體驗與優化https://github.com/rRetr0Git/rateMyCourse/issues/91牛宇航#86 重置密碼的后端邏輯https:/…

【動態規劃】多重背包

問題 Q: 【動態規劃】多重背包 時間限制: 1 Sec 內存限制: 64 MB 提交: 112 解決: 49 [提交] [狀態] [討論版] [命題人:admin] 題目描述 張琪曼:“魔法石礦里每種魔法石的數量看起來是足夠多,但其實每種魔法石的數量是有限的。” 李旭琳:…

【動態規劃】完全背包問題

問題 O: 【動態規劃】完全背包問題 時間限制: 1 Sec 內存限制: 64 MB 提交: 151 解決: 71 [提交] [狀態] [討論版] [命題人:admin] 題目描述 話說張琪曼和李旭琳又發現了一處魔法石礦(運氣怎么這么好?各種嫉妒羨慕恨啊),她們有…

springboot超級詳細的日志配置(基于logback)

前言 java web 下有好幾種日志框架,比如:logback,log4j,log4j2(slj4f 并不是一種日志框架,它相當于定義了規范,實現了這個規范的日志框架就能夠用 slj4f 調用)。其中性能最高的應該使…

【動態規劃】簡單背包問題II

問題 J: 【動態規劃】簡單背包問題II 時間限制: 1 Sec 內存限制: 64 MB 提交: 127 解決: 76 [提交] [狀態] [討論版] [命題人:admin] 題目描述 張琪曼:“為什么背包一定要完全裝滿呢?盡可能多裝不就行了嗎?” 李旭琳:“你說得…

Vue組件通信

前言 Vue組件之間的通信 其實是一種非常常見的場景 不管是業務邏輯還是前段面試中都是非常頻繁出現的 這篇文章將會逐一講解各個傳值的方式 不過在此之前 先來總結一下各個傳值方式吧 1.父組件向子組件傳值 > props2.子組件向父組件傳值 > $emit3.平級組件傳值 > 總線…