ホームページ >データベース >mysql チュートリアル >MySQL エラー 1406 を修正する方法: データが列に対して長すぎますか?

MySQL エラー 1406 を修正する方法: データが列に対して長すぎますか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-29 20:49:111021ブラウズ

How to Fix MySQL Error 1406: Data Too Long for Column?

エラー コード: 1406 - MySQL で列の長さに合わせてデータを切り捨てる

MySQL では、データの挿入がエラー「」で失敗することがあります。 1406: 挿入された値が定義された列幅を超える場合、「データが列に対して長すぎます」というメッセージが表示されます。これは、MySQL が挿入時に指定されたカラムの長さを超える値を切り捨てるために発生します。

この問題を解決するには、STRICT を使用しないように SQL モードを調整できます。

SQL の調整Mode

SQL モードは 2 つに変更できます方法:

1. my.ini/my.cnf ファイルの変更

MySQL 構成ファイルで「sql-mode」行を見つけ、「STRICT」フラグを削除するように変更します。例:

# Set the SQL mode to strict 
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

# Set the SQL mode to strict 
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

2 に置き換えます。 SQL クエリの実行

次の SQL クエリを実行して STRICT モードを無効にします:

SET @@global.sql_mode= '';

SQL モードを調整することで、MySQL は列幅を超える値を切り捨てなくなります。 。ただし、非 STRICT モードに切り替えるとデータの整合性が損なわれる可能性があることに注意することが重要です。このソリューションを実装する前に慎重に検討してください。

以上がMySQL エラー 1406 を修正する方法: データが列に対して長すぎますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。