ホームページ >データベース >mysql チュートリアル >MySQL の UPDATE 中に「切り捨てられた不正な DOUBLE 値」エラーが発生するのはなぜですか?
UPDATE 中の MYSQL の不正な二重値の切り捨て
提供された SQL 更新クエリは、shop_category テーブルの name 列と name_eng 列を変更しようとします。ただし、「切り捨てられた不正な DOUBLE 値: 'Secolul XVI - XVIII'」というメッセージが表示されるエラーが発生します。このエラーは通常、数値データ型 (DOUBLE、FLOAT など) として定義された列に、その列の事前定義された精度または位取りで表現できない値のデータを挿入または更新しようとしたときに発生します。
修正するにはこの問題では、name 列と name_eng 列のデータ型を確認することが重要です。提供されたテーブル構造によれば、両方の列は varchar(250) として定義されており、数値ではなく文字列値を期待していることを示しています。したがって、このエラーは、不正なデータ型が原因である可能性は低いです。
代わりに、UPDATE ステートメントの不正な構文がエラーの原因である可能性があります。 name と name_eng の割り当ての間に AND キーワードが存在することに注意してください。この構文は正しくありません。 UPDATE ステートメントでは、複数の列の割り当ては AND を使用せずにカンマで区切る必要があります。
修正された更新ステートメント:
次の修正されたステートメントは、指定された列を正常に更新します。
<code class="sql">UPDATE shop_category SET name = 'Secolul XVI - XVIII', name_eng = '16th to 18th centuries' WHERE category_id = 4768</code>
このステートメントは、エラーが発生することなく、文字列値 'Secolul XVI - XVIII' と '16th to 18th centuries' をそれぞれ name 列と name_eng 列に割り当てます。
以上がMySQL の UPDATE 中に「切り捨てられた不正な DOUBLE 値」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。