對于游戲幣等代幣,一般存儲為int類型是可行的。問題在于越界,int類型長度為11位。
目前創(chuàng)新互聯(lián)已為上千的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計、鳳凰網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
在存儲人民幣相關(guān)的金額的時候,則只能存儲到9長度的人民幣,也就是說,最大只能存儲999999999,不到10億的數(shù)值,如果業(yè)務(wù)增長很快的話,就會給自己留下隱患。
Decimal:Decimal為專門為財務(wù)相關(guān)問題設(shè)計的數(shù)據(jù)類型。
DECIMAL從MySQL5.1引入,列的聲明語法是DECIMAL(M,D)。在MySQL5.1中,參量的取值范圍如下:M是數(shù)字的最大數(shù)(精度)。其范圍為1~65(在較舊的MySQL版本中,允許的范圍是1~254),M的默認(rèn)值是10。
D是小數(shù)點右側(cè)數(shù)字的數(shù)目(標(biāo)度)。其范圍是0~30,但不得超過M。說明:float占4個字節(jié),double占8個字節(jié),decimail(M,D)占M+2個字節(jié)。
如DECIMAL(5,2)的最大值為9999.99,因為有7個字節(jié)可用。能夠解決數(shù)據(jù)的范圍和精度的問題。
擴(kuò)展資料
MySQL數(shù)據(jù)類型DECIMAL用法:
MySQL?DECIMAL數(shù)據(jù)類型用于在數(shù)據(jù)庫中存儲精確的數(shù)值。我們經(jīng)常將DECIMAL數(shù)據(jù)類型用于保留準(zhǔn)確精確度的列,例如會計系統(tǒng)中的貨幣數(shù)據(jù)。
要定義數(shù)據(jù)類型為DECIMAL的列,請使用以下語法:column_name??DECIMAL(P,D);
在上面的語法中:
P是表示有效數(shù)字?jǐn)?shù)的精度。?P范圍為1?65。
D是表示小數(shù)點后的位數(shù)。?D的范圍是0~30。MySQL要求D小于或等于(=)P。
DECIMAL(P,D)表示列可以存儲D位小數(shù)的P位數(shù)。十進(jìn)制列的實際范圍取決于精度和刻度。
與INT數(shù)據(jù)類型一樣,DECIMAL類型也具有UNSIGNED和ZEROFILL屬性。如果使用UNSIGNED屬性,則DECIMALUNSIGNED的列將不接受負(fù)值。
如果使用ZEROFILL,MySQL將把顯示值填充到0以顯示由列定義指定的寬度。另外,如果我們對DECIMAL列使用ZEROFILL,MySQL將自動將UNSIGNED屬性添加到列。
decimal(n,m)表示數(shù)值中共有n位數(shù),其中整數(shù)n-m位,小數(shù)m位。若不定義n m值則四舍五入取整
Mysql沒有金額類型的字段,mysql提供了兩個數(shù)據(jù)類型:numeric和decimal,這兩種數(shù)據(jù)類型可以輕松解決上面的問題:
NUMERIC 和 DECIMAL 類型被 MySQL 以同樣的類型實現(xiàn),這在 SQL92 標(biāo)準(zhǔn)中是允許的。他們用于保存對準(zhǔn)確精度有重要要求的值,例如與金錢有關(guān)的數(shù)據(jù)。當(dāng)以它們中的之一聲明一個列時,精度和數(shù)值范圍可以(通常是)被指定;例 如:
salary DECIMAL(5,2)
在這個例子中,5 (精度(precision)) 代表重要的十進(jìn)制數(shù)字的數(shù)目,2 (數(shù)據(jù)范圍(scale)) 代表在小數(shù)點后的數(shù)字位數(shù)。在這種情況下,因此,salary 列可以存儲的值范圍是從 -99.99 到 99.99。(實際上 MySQL 在這個列中可以存儲的數(shù)值可以一直到 999.99,因為它沒有存儲正數(shù)的符號)。
通常在處理金額方面,使用float 和double 明顯不夠精確。
設(shè)置字段使用decimal 后面不寫默認(rèn)是(10)。根據(jù)情況可以設(shè)置第二個參數(shù),第二個參數(shù)是需要保留的位數(shù),在java 中也不能直接使用 + - * / 方法來計算。使用bigDecimal 處理加法:add 減法:substract 乘法:multiply 除法:divdie。計算
分享文章:mysql中金額怎么表示 mysql money
瀏覽路徑:http://m.2m8n56k.cn/article44/doggeee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、Google、網(wǎng)站改版、電子商務(wù)、網(wǎng)頁設(shè)計公司、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:[email protected]。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)