1分錢哪裏去了?7/3

"請問一分錢哪裏去了?" 已經離開前一家公司有兩年多了,一位老客戶今天竟打電話前來詢問財務報表相差1分錢的事情,他說試算表及資産負債表都因相差1分錢而不平衡,也就無法交報表@_@

在會計資訊管理系統中,每日會有會計錄入傳票,到月底或下月初結帳時傳票在經過審核後需要過帳,即將每一個科目的餘額每月留底起來,特別是資産,負債,所有者權益類科目,每月的留底餘額會一直累加下來,而試算表與資産負債表都要讀取留底的餘額.如果說不平衡可能原因會是傳票借貸不平衡或者程式代碼中孌數形態不當或資料庫中資料表欄位形態設定不當及數值小數位數的四舍五入.

在此要特別提醒欄位在設計成數值時要千萬小心慎用float喔

用MYSQL的一個表tableA中的兩個字段分別設為decimal(18,4)和float(18,4),當在對這兩個欄位輸入數值
123456.0000  123456.0000正常
1234568.0000 1.234567e+006不正常
當float形態的整數值超過6位時資料庫中看到的值就會用科學計數法,而當超過6位且末尾是8或9時值就變異了

而且程式中變數的設定也需要和資料庫中的保持一致

1分錢到底哪裏去了?好像是留底餘額的欄位為float形態,儘管可能程式中會用decimal的變數,小數位數有四舍五入

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值