0

我的 C# 操作从数据库中读取的 ID。最初,它们以CHAR(32) NOT NULL格式存储。(这是表的主键)

一旦在 C# 中,这将转换为 Int32(逻辑上?)

但是当我需要将这些值插入到另一个具有类似结构的表中,但主键的类型是INT IDENTITY(1, 1) NOT NULL)时,我(逻辑上)得到以下错误,因为大多数 CHAR(32)不是有效的整数:

输入字符串的格式不正确。无法存储在 ID 列中。预期类型是 Int32。

假设我想为我的目标 ID 列保留 INT 类型,C# 代码应该如何将“E6802AA26C748A5A0EDE987384D2C48”发送到 SQL 服务器,以免抱怨这不是真正的 Integer ?

4

1 回答 1

2

E6802AA26C748A5A0EDE987384D2C48 不是 Int32。这是一个 GUID。您需要 128 位来存储它,而不是 32 位。

于 2012-04-16T16:31:13.353 回答