這個是型別轉換問題:
select * from a,b where a.coursenum=b.billon;
其中coursenum為number型別,billion為varchar2型別。
假如b.billion全部都是可以轉為number的就沒有問題。
--疑問:
dml語句的處理過程:
1、建立游標
2、分析語句,語法分析
(1)翻譯sql語句,驗證它是否是合法的語句,即書寫的正確
(2)實現資料字典的查詢,以驗證是否符合表和列的定義。
......
......
在2、(2)中,不對錶a.coursenum=b.billon的列型別進行驗證嗎?
或者說 這是屬於資料轉換的範圍,只有在執行階段才識別的?
select * from a,b where a.coursenum=字串,字串能夠轉為數字的,就沒有問題。
select * from a,b where b.billon=數字,則如果b.billon存的都是可以轉為數字的,則沒問題。但是如果b.billon存的有乙個是不可以轉為數字的,則有報ora-01722: 無效數字異常。
資料轉換或者鍵值約束、死鎖等,是在執行階段才確定的。
關於字串轉換的總結
不同編碼的字串轉換的方法網上挺多的,但是能用的就不多了,在此總結一下常用的字串轉換方法 有些是自己摸索的,有些是看微軟例子程式知道的 不足的轉換我會在以後的日誌裡加上的 wchar t轉換為char char轉換為wchar t tchar char和wchar t 與 bstr t互 cstrin...
字串的轉換
數字 布林值等其他資料型別都可以轉換成字串 一般來說,指令碼引擎將根據上下文自動完成這樣的轉換。例如,當把數字或布林形變數傳給希望接收的字串變數的函式時,就會先隱式將該數值轉換成字串,再進行處理 var num 35.00 alert num 如果在賦值語句中要對兩個變數執行加法操作,其中乙個事字串...
字串的轉換
字串轉換 1.數字轉字串 有兩種方法,第一種用string.valueof,第二種先把基本型別裝箱,轉換為類型別 然後使用tostring方法 package test public class lianxi 這裡要注意int型別直接用tostring是不可以的 下面就是字串轉化為數字 可以呼叫in...