c# - "Failed to convert parameter value from int64 to int32"

标签 c# sql-server

我正在向 SQL Server 表中插入一些值。当我从前端获取值时,它们是字符串。所以我需要先将它们转换为 int,然后才能将它们插入表中。

我正在使用这段代码:

Int64 x = Convert.ToInt64(some string value);

我想将此 x 插入到表中,插入 numeric(18,0) 类型的列中。

进行此转换时,出现错误

Failed to convert parameter value from int64 to int32

虽然我所有的值都在 1000 左右。

最佳答案

使用 int x = Convert.ToInt32(some string value) 它应该可以工作。

您的数据库需要一个 Int32 类型的值。由于可能丢失信息,SQL Server 不会将 64 位数字隐式转换为 32 位数字。

关于c# - "Failed to convert parameter value from int64 to int32",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13025446/

相关文章:

c# - 缺少公开可见类型或成员的 XML 注释

sql - 如何将 3 个查询合并为一个

SQL Server : workers shift excluding break times

sql-server - 有人可以解释一下参数 RETURN_VALUE 吗?

java - 在eclipse中连接到SQLserver

c# - 为什么在 Marshal.SizeOf 中 bool 是 4 个字节,而 char 只有 1 个字节?

c# - Azure 搜索存在搜索问题?

c# - 在 Visual Studio 2010 中构建时锁定文件

c# - WCF 参数丢失值

c# - 使用 c# 将 SQL Server 2008 数据库中的表导出到 excel