「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > MySQL で挿入時にエラーを発生させる代わりにデータを切り捨てるようにするにはどうすればよいですか?

MySQL で挿入時にエラーを発生させる代わりにデータを切り捨てるようにするにはどうすればよいですか?

2024 年 11 月 18 日に公開
ブラウズ:325

How to Make MySQL Truncate Data Instead of Raising an Error on Insert?

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