【发布时间】:2019-07-29 14:52:59
【问题描述】:
当我将某些数据集添加到表中时,它们出现异常。数据来自 WEB API,以下数据列也不例外。
"RRP": 2.98074513,
"Cost": 2.533633360
但当它尝试添加以下数据集时,它会显示 SQL 异常
"RRP": 2.92,
"Cost": 2.4820
还有这个-
"RRP": 4.90,
"Cost": 4.1650
例外是“Core .Net SqlClient Data Provider, MessageArithmetic overflow error conversion int to data type numeric”
SQL表结构-
CREATE TABLE [dbo].[DailyConsumptionLogs](
[UsageLineId] [int] IDENTITY(1,1) NOT NULL,
[ResourceId] [varchar](500) NOT NULL,
[RRP] [numeric](15, 13) NOT NULL,
[Cost] [numeric](15, 13) NULL
) ON [PRIMARY]
在 C# 中执行的插入语句 -
string sql_command = String.Format(@"INSERT INTO DailyConsumptionLogs(
ResourceId,
RRP,
Cost)
VALUES ('{0}','{1}','{2}')",
item.ResourceId,
item.RRP,
item.Cost);
【问题讨论】:
-
您需要出示您的
insert声明。根据您的值,没有从int到numeric的转换。问题可能出在触发器上。 -
@GordonLinoff 我已经用插入语句更新了这个问题。请看一下
标签: c# sql sql-server