MySQL の挿入動作: 切り捨てとエラー
MySQL は、カラムの長さの制限を超えるデータを挿入しようとすると、さまざまな動作を示します: 切り捨てまたはエラー。このシナリオでは、エラーを発生させるのではなく、データを切り捨てるように MySQL インスタンスを変更することを目的としています。
解決策: STRICT_TRANS_TABLES および STRICT_ALL_TABLES を無効にします
デフォルトでは、MySQL は厳密な値を強制します。モードには、STRICT_TRANS_TABLES および STRICT_ALL_TABLES 設定が含まれます。これらの設定では、INSERT や UPDATE などのデータ変更操作で無効な値や欠損値が禁止されます。
挿入された文字列の自動切り捨てを許可するには、STRICT_TRANS_TABLES と STRICT_ALL_TABLES を無効にします。方法は次のとおりです:
SET SESSION sql_mode=NO_STRICT_TRANS_TABLES,NO_STRICT_ALL_TABLES;
説明:
これらの設定を無効にすることで、無効な値または欠損値に対する制限。これにより、MySQL はデフォルトの切り捨て動作に従い、カラムの長さ制限を超えるデータをサイレントに切り捨てることができます。
リファレンス:
MySQL Server SQL モード: https:/ /dev.mysql.com/doc/refman/8.0/en/sql-mode.html
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3