在SQL数据库中,设置了一个字段的类型为money,但是money类型数据保留的是四位小数,如何设置为两位小数?

能否在数据库中直接设置数据的存储格式,保留两位小数。最好能够详细一点。
如果我要让数据不但保留两位小数,并且还要显示金额分隔符(如123456.7894显示为123,456.79)。请各位不要建议我换字段类型,我就用money类型。还有一点,我现在是用asp.net进行编程,各位能否告诉我在具体的页面里如何写?有劳各位高手了!!!

1、直接型,通过ToString()函数直接格式化。

例如把money = 12345.67 格式成 money = 12,345.67。代码如下: 

string _money = moeny.ToString("N")或者string _moeny = money.ToString("#,###.00")

2、本地化型,通过CultureInfo类,根据指定的文化进行格式化,同样的,代码如下:

double money = 12345.67;  

CultrueInfo ci = new CultrueInfo("zh-CH");  

string _money = money.ToString("c",ci)。

扩展资料:

1、toString() 方法用于返回以一个字符串表示的 Number 对象值。如果方法使用了原生的数据类型作为参数,返回原生数据类型的 String 对象值。如果方法有两个参数, 返回用第二个参数指定基数表示的第一个参数的字符串表示形式。

2、CultureInfo类保存区域性特定的信息,如关联的语言、子语言、国家/地区、日历和区域性约定。此类还提供对 DateTimeFormatInfo、NumberFormatInfo、CompareInfo和 TextInfo的区域性特定实例的访问。

这些对象包含区域性特定操作(如大小写、格式化日期和数字以及比较字符串)所需的信息。

参考资料来源:百度百科-CultureInfo

温馨提示:内容为网友见解,仅供参考
第1个回答  2020-03-18

如果希望只保留2位小数,可以使用decimal数据类型,例如:

 decimal(15,2)

当然,也可以在select时将money类型转换成decimal,使其只显示两位小数。假设用户的字段名叫做工资,数据类型是money, 可以用cast语句将其转换成两位小数的decimal,cast(工资, decimal(12,2))

扩展资料:

decimal数据类型的用法

decimal(M,N) 

M表示:不包括小数点,不包括符号位,所能存数字的总位数(包括小数部分和整数部分) 

N表示:小数部分数字的位数,由此可知整数部分的位数为M-N;

例如:

decimal(4,2) 能够表示的数的范围 -99.99到99.99。

本回答被网友采纳
第2个回答  推荐于2017-11-23
如果希望只保留2位小数,可以使用decimal数据类型。例如: decimal(15,2)
当然,也可以在select时将money类型转换成decimal,使其只显示两位小数。假设你的字段名叫做工资,数据类型是money, 可以用cast语句将其转换成两位小数的decimal,
cast(工资, decimal(12,2))本回答被提问者采纳
第3个回答  2010-11-20
字段可以这样写:
fees money (18,2)本回答被网友采纳
第4个回答  2010-11-20
decimal(18,2)

在SQL数据库中,设置了一个字段的类型为money,但是money类型数据保留的...
1、直接型,通过ToString()函数直接格式化。例如把money = 12345.67 格式成 money = 12,345.67。代码如下:string _money = moeny.ToString("N")或者string _moeny = money.ToString("#,###.00")2、本地化型,通过CultureInfo类,根据指定的文化进行格式化,同样的,代码如下:double money = 1...

【SQL】金额如果存在数据库中应该使用何种类型?
一般用money或decimal或numeric,而不用float或double,因为容易出现"失真".money货币数据存储的精确度为四位小数。可以存储在 money 数据类型中的值的范围是 -922,337,203,685,477.5808 至 +922,337,203,685,477.5807(需 8 个字节的存储空间)。在 SQL Server中,numeric 数据类型等价于 decimal ...

Sql语句 设置MONEY格式为货币格式!
default 0 意思就是 默认值是0 也就是 如果你插入数据的时候, 如果这一列, 不传数据, 那就就使用默认值来填写这个字段。

在sqlserver中对于表示金额的字段,一般用money数据类型而
在SQL Server中处理表示金额的字段时,通常推荐使用money数据类型。这是因为整数在处理金额数据时,可能会导致理解上的困难和逻辑错误。例如,考虑更新成员表中的金额字段,语句如下:update member set money=money - 100 where id=10 and money>=100。若使用整数,此语句将不会存在问题。但若使用浮点类...

sql更新语句 数据类型为money的 怎么加减
money是一个数值类型,可以正常数据运算,与int、double、之类的是一致的,楼主应该懂得数据运算吧。表里面也是一样的,update 表 set 字段=... where 条件

sql各种数据类型的含义
范围是小数点左右所能存储的数字的总位数。精度是小数点右边存储的数字的位数money货币型money 数据类型用来表示钱和货币值。这种数据类型能存储从-9220亿到9220 亿之间的数据,精确到货币单位的万分之一smallmoney货币型smallmoney 数据类型用来表示钱和货币值。这种数据类型能存储从-214748.3648 到214748...

Sql server中的数据类型money相当于mysql中的什么类型
money 类型其实就是小数类型 decimal

sql server 货币 字段 类型 一般用什么类型?
货币的字段类型一般有int,float,money\/smallmoney,decimal\/numberic。根据存储数据的精度不同选择:int只能存储整数的钱。money\/smallmoney 数据类型精确到它们所代表的货币单位的万分之一 。decimal\/numberic 可以自定义小数位和能存储的数据精度, 所以一般使用这种类型的人会多一些。float 对货币这种需要...

数据库money???
如果是这样的话,你就变成:decimal类型,使它的小数点为1,比如:decimal(20,1)另:不知道你为什么要使money类型精确到小数点一位,如果要是在web里显示成一位的话,你可以用其他方式达到这个目的啊

sql数据库的字段类型为numeric 和 money时,asp如何写入
你所写的SQL语句中,有字段类型不匹配的,字段类型为 Money,你的SQL语句为字符型 方法:把SQL语句中这个字段的 单引号去掉

相似回答