2012-11-19 117 views
0

我執行下面的查詢,但它是在插入第一場的局部值,即95362代替95362-07Oracle數字數據類型值插入

插入查詢::

INSERT INTO ACCIDENT VALUES(95362-07,'Orthoptic education on visual ergonomics','Orthoptic education on visual ergonomics'); 

獲取值表::

95362,Orthoptic education on visual ergonomics,Orthoptic education on visual ergonomics. 

表結構:

desc accident 

Name       Null  Type                                               
-------------------------------------------------- 
ID          NUMBER                                               
ACC_NAME        VARCHAR2(4000)                                             
ACC_DESC        VARCHAR2(4000)                                             
+0

你應該發佈你的'選擇'查詢和你的'表'描述。好像你在第一個參數 –

+0

中傳遞減法操作而不是varchar,問題出在插入上,它插入的是95362而不是95362-07。數據類型是該字段的編號 –

+0

它這樣做是因爲正如我所說,似乎是在第一個參數中傳遞操作而不是varchar。但我只能肯定,如果你張貼你的表描述 –

回答

2

這裏的問題,你的第一列期待的Number

desc accident 

Name       Null  Type                                               
-------------------------------------------------- 
ID          NUMBER                                               
ACC_NAME        VARCHAR2(4000)                                             
ACC_DESC        VARCHAR2(4000)                                             

數據類型,然後,當您插入查詢,第一個參數被只計算了它的數字部分,這是95362

要以ID的形式存儲您的ID記錄,您必須將您的ID列更改爲VARCHAR2數據類型。否則,你會繼續得到這個結果。

我希望它有幫助。乾杯