DBAtlas · データベース運用アトラス

8114: Error converting data type X to Y(データ型 X から Y への変換エラー)

SQL Server

意味

型に互換性がないため、値をあるデータ型から別のデータ型に変換できなかった。エラー 245 とは異なり、通常はパラメータ/式のレベルでの型変換の失敗である (例: varchar から numeric)。

原因

数値以外または不正な形式のテキストを数値列/パラメータに送信した、スケール/精度のオーバーフロー、空文字列 ('') を数値に変換しようとした、またはパラメータ化クエリで誤った型の引数を渡した。ORM が生成する暗黙の変換でよく見られる。

対処方法

変換される値が対象の型に適合することを確認する。安全な変換には TRY_CONVERT / TRY_CAST を使用する。失敗時に NULL を返すため、それらの行を WHERE で除外できる。パラメータの型を列の型に合わせる。ISNUMERIC/TRY_CAST でデータを走査して問題の行を見つけ、空文字列を整理する。

DBAtlas で開く →

同じデータベースの他の項目