上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
zfgg
註冊時間: 2004-05-31 文章: 179 來自: 中国
第 1 樓
|
發表於: 星期二 十一月 02, 2004 11:22 am 文章主題: VFP表的小数值到SQL表中只有整数 |
|
|
从一个VFP表中,读出的数值,插入到SQL表中,使用的是存储过程,数据定义用的是decimal 。在VFP中,使用了str(vary,10,2),原变量有小数,传到SQL后,不行了,不显示小数,只有四舍五入的整数。请教如何解决? |
|
回頂端 |
|
 |
garfield Site Admin

註冊時間: 2003-01-30 文章: 2160
第 2 樓
|
發表於: 星期二 十一月 02, 2004 11:48 am 文章主題: |
|
|
會不會是你在sql表中用了整數欄位 _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
 |
zfgg
註冊時間: 2004-05-31 文章: 179 來自: 中国
第 3 樓
|
發表於: 星期四 十一月 04, 2004 3:47 pm 文章主題: |
|
|
SQL数据定义用的是decimal 。在VFP中字段定义是数值型,表与grid1捆在一起,加入了文本框.文本框显示有小数.取值用aa=str(vary1,10,2)方法,传到SQL后,只有四舍五入的整数。如果用spinner控件,传到SQL后,有整数小数。但是我不想用spinner控件.请教还有没有解决方法? |
|
回頂端 |
|
 |
goto-dream
註冊時間: 2004-05-11 文章: 909
第 4 樓
|
|
回頂端 |
|
 |
zfgg
註冊時間: 2004-05-31 文章: 179 來自: 中国
第 5 樓
|
發表於: 星期五 十一月 05, 2004 10:50 am 文章主題: |
|
|
我用的下列方法,还是不行!
’ypsl'是字段的名,为 numeric 型。
_ypsl = alltri(str(ypsl,10,2))
sqlexec(handle,"{call st_cufang (?_ypsl)}") |
|
回頂端 |
|
 |
garfield Site Admin

註冊時間: 2003-01-30 文章: 2160
第 6 樓
|
發表於: 星期五 十一月 05, 2004 11:09 am 文章主題: |
|
|
資料型態是 decimal , 為何要用 STR( ) 將它轉成文字? _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
 |
bin1x
註冊時間: 2004-08-27 文章: 462
第 7 樓
|
發表於: 星期五 十一月 05, 2004 11:46 am 文章主題: |
|
|
其實稍做一下測試
並無他所指的結果
除非他的預儲程式有問題
有再做型態的轉換
str(數值,10,2) 會將數值轉換成字串
比如數值是10.02
字串也是10.02
他所指的情況也試過了,並無所指的情形發生
除了預儲程序,
而他指的情況,搞不好問題是在
sql預儲程式,有做了資料型態的轉換 |
|
回頂端 |
|
 |
zfgg
註冊時間: 2004-05-31 文章: 179 來自: 中国
第 8 樓
|
發表於: 星期五 十一月 05, 2004 3:18 pm 文章主題: |
|
|
谢谢各位大力指导!我终于试出来了。原因是在存储过程中没有指定位数。将原来的"@_ypsl decimal" 改这"@_ypsl decimal(10,2)"就行了。但是为什么是spinner控件的值传过去不会丢失小数?我还不知道。我在查询分析器中,在不指定位数的情况下,直接赋值数字,只有整数,也没有小数。 |
|
回頂端 |
|
 |
|