2017-02-01 31 views
0

我有一個問題,因爲我在存儲過程中創建了一個#TmpTbl,它將值插入具有REAL數據類型的字段中。當我將此值寫入另一個具有NVARCHAR(200)數據類型的表時,它將更改原始值。將真實數據類型轉換爲nvarchar會更改原始值

REAL數據類型值= 2122222轉換後NVARCHAR數據類型值= 2122220

+1

提示:這是有幫助的標記與數據庫的問題,無論是適當的軟件(MySQL,Oracle,DB2,...)和版本,例如'的SQL服務器2014'。語法和功能的差異往往會影響答案。 – HABO

回答

0

使用STR
https://msdn.microsoft.com/en-us/library/ms189527.aspx

create table t (i int,x nvarchar(200)) 

declare @x real = 2122222 

insert into t (i,x) select 1,@x 
insert into t (i,x) select 2,str (@x) 

select * from t order by i 

+---+--------------+ 
| i | x   | 
+---+--------------+ 
| 1 | 2.12222e+006 | 
+---+--------------+ 
| 2 | 2122222  | 
+---+--------------+ 
+0

感謝您的協助。 –

+0

歡迎您。它對你有用嗎? –

+0

是的,它確實謝謝你。 –

相關問題