1樓:網友
numeric 是數值型別,看你插入的都是字元。所以,你要在有numeric那一列插入數值。
2樓:網友
你看一下你建的資料表中各欄位的屬性,尤其是屬性為numeric的欄位。插入資料屬性必須和相應欄位屬性匹配。
sql 從資料型別 varchar 轉換為 numeric 時出錯.
3樓:靈魂心心相印
你在設計裡,檢視下,是num的格式的,後面select跟的 num格式空著的就要用 null代替,varchar格式用2個單引號『』代替,百分百好用,希望幫到你。
4樓:網友
是numeric型別的欄位,插入的值不用加單引號。
5樓:
樓上的2位回答明顯不靠譜,你插入的最後乙個值,對應的列是否數值型的。在插入數值型的列的時候,如果沒有值,要麼插入0,要麼插入null值,插入''就會出現從資料型別 varchar 轉換為 numeric 時出錯。你其他的列都應該沒問題,如果數值的長度夠長的話。
6樓:發生等將發生
你將型別為numeric的那列轉換一下。
cast(『111111111』 as numeric(18,2))
後面的是小數點後的位數,自己看著給。
據型別 varchar 轉換為 numeric 時出錯
7樓:
一定是所執行的sql指令碼中有以下的情況:
1、將乙個帶有非數字的字元存入數值型欄位或變數中。
如: declare @abc decimal(12,4)set @abc=''就會出現此錯誤。
set @abc='' 就不會出現此錯誤。
2.在convert或cast函式將某字串轉換為數值型資料時,源字串包含非數字字元,就會報此錯誤。如:
select convert(decimal(12,4),'')3.在邏輯表示式中試圖比較乙個非數字的字元與乙個數值型變數時,會發生該錯誤,如。
select * from tablename where **》'1000a'
*************************==不如這樣:
select *
from haoma
where col001>'13400000000'
從資料型別 varchar 轉換為 numeric 時出錯
8樓:海天盛
一、有null值;
二、有「」值;
isnumeric確定表示式是否是有效的數字型別。以下值在sql函式isnumeric()中沒有找到:
1.有「-」值;
2.財務上用的逗號,有「,」值。
把以上轉為0,就可以了。
其他:轉小數值一般不要超過5位。
9樓:大野瘦子
一、有null值;
二、有「」值;
isnumeric確定表示式是否為乙個有效的數字型別。下面這幾個值,用sql函式isnumeric()用查不出來錯誤:
1、有「-」值;
2、財務上用的逗號,有「,」值。
把以上轉為0,就可以了。
其他:轉小數值一般不要超過5位。
10樓:那時花開應自在
cast( as numeric(18, 5))/cast( as numeric(18, 5) 這個得到的是數值型別,而你前面兩個得到的是字元型別,我認為只要把這個直接轉字元就可以了:
to_char(,
11樓:網友
乙個小建議,轉換前用isnumeric()函式試一下,就可以保證不出錯了,case when isnumeric(123) = 1 then cast(..as int) else null end
從資料型別 varchar 轉換為 numeric 時出錯 為什麼啊一直轉不了
12樓:網友
一般來說,是因為你varchar型別的欄位中,存有字元(非數字),所以轉換失敗。
將 varchar轉換為資料型別 numeric 時出現算術溢位錯誤。
13樓:匿名使用者
我告訴你吧,在你執行這句update goods set goodscost = '' where gooodsid = 'sok4567' 語句是,sql系統隱式的將'' 轉換成的decimal(6,2)資料型別,但是他不能將字串「ab」隱式的轉換成你所需要的,ok?
14樓:消失了的灰色
把@goodscost轉換成字串再與sql拼接,比如 'update goods set goodscost = ''' + cast(@goodscost as varchar) +''' where gooodsid = ''sok4567'''
15樓:網友
數字的值不能大於等於10000
sql表單提示"從資料型別varchar轉換為int時出錯"
16樓:網友
欄位的值有帶小數,肯定不能as int ,改成cast( as float)就可以了。
17樓:鄧顯軍
1、varchar是字串類bai
型,而int是數字整型。
duvarchar型別可以儲存任zhi意字元,而int只能dao儲存數字整型所以會內報錯;
2、你容可以將int型別轉換為varchar型別,因為varchar可以儲存任意的字元;例如:123(一百二十三)位int型別,當你將123轉為varchar型別之後就變成了123(一二三)。如果你講abc varchar型別轉換為abc int型別時是無法轉換的;
從資料型別varchar轉換為numeric時出錯 怎麼解決
首先這個問題涉及到ado程式設計。既然你使用了tadoquery控制元件。說明你應該對這方面有一些瞭解了。下面我會和你說下除錯的方法和問題出現的原因以及解決方案。1.除錯 當你在adoquery1.execsql 這句設定斷點,即滑鼠停留在該行,按下f5。右擊選擇選單debug evaluate m...
mysql中的資料型別varchar 255 表示什麼意思
呵呵,在mysql資料庫裡,使用varchar型別比較常見。用char的幾乎不多。char是一種固定長度 的型別,varchar則是一種可變長度的型別,它們的區別是 char m 型別的內資料列清塵裡,每個值容都佔用m個位元組,如果某個長度小於m,mysql就會在它的右邊用空格字元補足 在檢索操作中...
c語言中資料型別的轉換
include stdio.h main 輸出的資料型別不匹配 給你舉個例子吧 j i 實際j值和i一樣 j i,實際j值比i大一 你還沒明白 i 注意它是在i使用後自動加一printf d i 這是兩句命令,執行完i 後才輸出,i值自然 1 j 它是在使用前加一 printf d j 也是兩句命令...