【資料圖】
decimal(10,2)中的“2”表示小數(shù)部分的位數(shù),如果插入的值未指定小數(shù)部分或者小數(shù)部分不足兩位則會(huì)自動(dòng)補(bǔ)到2位小數(shù),若插入的值小數(shù)部分超過(guò)了2為則會(huì)發(fā)生截?cái)啵厝∏?位小數(shù)。
decimal可以為負(fù)數(shù)嗎
可以為負(fù)值。
Decimal為SQL Server、MySql等數(shù)據(jù)庫(kù)的一種數(shù)據(jù)類型,不屬于浮點(diǎn)數(shù)類型,可以在定義時(shí)劃定整數(shù)部dao份以及小數(shù)部分的位數(shù)。
使用精確小數(shù)類型不僅能夠保證數(shù)據(jù)計(jì)算更為精確,還可以節(jié)省儲(chǔ)存空間,例如百分比使用decimal即可,存儲(chǔ)數(shù)據(jù)范圍是:-^8~^8- 的固定精度和小數(shù)位的數(shù)字,一個(gè)decimal類型的數(shù)據(jù)占用了~7個(gè)字節(jié)。
一單位的統(tǒng)計(jì)服務(wù)器投入使用后,運(yùn)行速度較慢,經(jīng)排查原因,發(fā)現(xiàn)SQLServer中的內(nèi)存選項(xiàng)(Memory)僅為安裝缺省值16MB(而服務(wù)器有128MB的物理內(nèi)存)在將;
內(nèi)存值調(diào)整為100MB時(shí)卻誤將其改成了1000MB,使得SQL Server服務(wù)不能啟動(dòng),統(tǒng)計(jì)數(shù)據(jù)庫(kù)打不開,也就不能再次進(jìn)入SQL Enterprise Manager修改內(nèi)存設(shè)置了。
既然SQL Server可用內(nèi)存設(shè)置值遠(yuǎn)遠(yuǎn)大于物理內(nèi)存,造成SQLServer服務(wù)不能啟動(dòng),何不擴(kuò)充虛擬內(nèi)存呢?經(jīng)設(shè)法將機(jī)器虛擬內(nèi)存擴(kuò)充至1000MB并重新啟動(dòng),SQL Server數(shù)據(jù)庫(kù)成功啟動(dòng),問(wèn)題迎刃而解。
Decimal是什么意思
對(duì)SQL Server而言,Decimal可用來(lái)保存具有小數(shù)點(diǎn)而且數(shù)值確定的數(shù)值,它不像float和real是用來(lái)保存近似值。對(duì)于Visual Basic而言,Decimal是其版本5新增的數(shù)據(jù)類型,目的是滿足進(jìn)行精密數(shù)學(xué)運(yùn)算的需求,它是范圍最大、最精確的浮點(diǎn)數(shù)類型。對(duì)于Excel而言,DECIMAL()函數(shù)用于按給定基數(shù)將數(shù)字的文本表示形式轉(zhuǎn)換成十進(jìn)制數(shù)。