私は、バックエンドストレージにSQL Server 2016を使用しているアプリケーションを持っています。私は私が実行しようとしている次の文があります。単純なSQL UPDATEステートメントによる変換エラー
UPDATE dbo.AspNetUsers
SET [IsActive] = 1
WHERE [Id] = '1b08b7a9-2978-4116-8a9c-e86bc9ae8bbf'
[IsActive]
BIT
列[Id]
がNVARCHAR(128)
列
実行する場合、私は次のエラーを取得するです:
Msg 245, Level 16, State 1, Procedure tUserActiveChange, Line 21 [Batch Start Line 4]
Conversion failed when converting the nvarchar value '1b08b7a9-2978-4116-8a9c-e86bc9ae8bbf' to data type int.
ikeはかなり簡単な更新ステートメントです。私はさらに、更新された列がBIT
であり、WHERE
の条件にVARCHAR
の列を使用している同じサーバー上の別のデータベースで、同じ種類の文を試してみました。
何ですか?
Idフィールド(テーブル内)はNvarChar(128)ではありません。実際にはIntとして定義されています。あなたはGUIDとして定義されたテーブルの別の列を持っている必要があります – Sparrow
'id'型が' int'ではありませんか? 'sp_help AspNetUsers'を実行して確認してください。 – DarkKnight
私は二重チェックし、[Id]はVARCHAR(128) – TSoder