0

私のC#は、データベースから読み取ったIDを操作します。元々、これらはCHAR(32)NOTNULL形式で格納されています。(これがテーブルの主キーです)

C#に入ると、これはInt32に変換されます(論理的には?)

しかし、これらの値を同様の構造を持つ別のテーブルに挿入し直す必要があるが、主キーのタイプがINT IDENTITY(1、1)NOT NULL)の場合、ほとんどのCHAR(32)と同様に、(論理的に)次のエラーが発生します。有効な整数ではありません:

入力文字列が正しい形式ではありませんでした。ID列に保存できませんでした。予想されるタイプはInt32です。

ターゲットID列のINTタイプを保持したい場合、C#コードは「E6802AA26C748A5A0EDE987384D2C48」をSQLサーバーに送信して、これが真の整数ではないと文句を言わないようにする必要がありますか?

4

1 に答える 1

2

E6802AA26C748A5A0EDE987384D2C48はInt32ではありません。これはGUIDです。保存するには、32ビットではなく128ビットが必要です。

于 2012-04-16T16:31:13.353 に答える