我首先使用实体框架代码。当试图将负十进制值保存到Server数据库时,会发生此错误。下面列出了我要保存的模型。
public class Material
{
public Material()
{
Categories = new List<Category>();
}
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; }
[Required]
我有一个存储在数据库中的实体
public class data {
@Column(name = "id")
final String id;
@Column(name = "length")
final BigDecimal length;
}
当您从缓存中反序列化并检索数据时,我丢失了0
期望值:
data{id=3, length=6.00}
实际
data{id=3, length=6}
我为我参加的一个夏令营找到了一个内部银行解决方案。问题是,一些账户在赛季结束时确实少了一分钱。
我使用的是带有两个表的SQL Server Express。一个包含所有帐户的表,用于保存它们的当前余额。另一个表是正在运行的事务日志。这个想法是,如果我要对日志中的所有事务进行求和,它应该等于任何给定帐户的当前帐户余额。
例如,我对数据库求和,发现一个给定的帐户应该具有$15.10,但是account表显示它们的余额为$15.09
相关代码如下:
//Amount is negative, they bought something
if (amount <= 0)
{
//Chec
我正在开发一个使用Node.js的回送框架开发的应用程序。我需要从csv读取数据并将其保存在我的SQL Server DB上(我使用的是SQL Server 2014实例)。csv文件的一列包含16位十进制数字。我可以从csv文件中读取它们,但当我将它们保存在数据库中时,它会更改最后的十进制数字。例如,csv的第一行的值是"0.0059888523696288“,但在DB上我发现是"0.0059888525865972”。
我在我的javascript代码中执行了一个console.log来检查数字,它们被正确地打印出来了,所以我猜这个问题是在DB读取数据时发生的。
这是在我的
我正在改变列上的比例,就像这样...
change_column :options, :size, :decimal, :precision => 8, :scale => 8
它在本地工作,但是在运行heroku时抛出错误...
PGError: ERROR: numeric field overflow
DETAIL: A field with precision 8, scale 8 must round to an absolute value less than 1.
: ALTER TABLE "options" ALTER COLUMN "
我有一个类,它包含一个Decimal公共属性(由实体框架生成,代码向下显示),并且在将其舍入为整数时遇到问题。
我正在读取一个文本文件,并按如下方式解析数字(为了清晰起见,大多数代码都被省略了).
decimal val = decimal.Parse(str);
Transaction t = new Transaction {
Value = val
};
如果我检查val,我可以看到它包含完整的值,例如9.99,如果我检查value属性,它是正确的。但是,当将对象保存到数据库时,该值被舍入到最近的整数,从而丢失小数部分。
数据库将字段定义为十进制(18,0),EF对此进行分析,并使用
我在一个表中有两列填充了整数值。对于每条记录,我希望将这两列的值相除,并格式化输出,以便将小数点移动到右边的位置。
例如,如果一条记录的两个列的值分别为4和1,并且我想要将1除以4(因此是1/4),那么我希望输出为25.00。
这是我之前尝试的最后一件事:
CAST(Total AS Decimal(2))/CAST(TotalAnswers AS Decimal(2)) AS 'Percent'
我找不到CAST函数的语法解释,无法了解传入的decimal参数表示什么。当我改变它时,它有时会改变小数点右边的位数,但结果并不总是我所期望的,所以我想在这方面得到一些帮助。