整数値が正しくありません:列の ''
Incorrect Integer Value
謙虚な人々は、データベースストレージを操作するときにそのような問題に遭遇しました。
SQLステートメントを実行してデータをバッチで挿入するとエラーが報告されます
Incorrect integer value: '' for column 'zhuticengshu' at row 1
私のデータベーステーブルの設計は非常に単純です。
率直に言って、それは記録することであり、将来そのようなエラーを避けるためです
ここで、idは自己増加IDであり、残りのフィールドは非主キーであり、実行中は常にエラーが報告されます。
Incorrect integer value: '' for column 'zhuticengshu' at row 1
問題テスト
まず、バックグラウンドで印刷されたSQLをコピーします
Navicatを介してバルクデータが挿入されると、データは例外なく正常に挿入されます。
データを挿入
問題が解決しました
最後に、私はグーグルで検索し、5以降のmysqlバージョンでこのような問題が発生することを発見しました。NULLを使用するにはヌル文字を挿入してください
INSERT INTO ${tableName}( ${item.fieldName} ) VALUES ( NULL '${extitem.value}' )
オンラインで情報を確認し、5を超えるバージョンが空の場合は、NULLを書き込む必要があることを確認してください。
この種の問題は通常、mysql5.xで発生します。
バージョンの選択()を使用して表示し、
私はmysql5.0.37を使用しており、バックアップを作成したMySQLデータベースのバージョンは5.6です。
公式の説明:新しいバージョンのmysqlにはnull値の挿入に関する「バグ」があることを知りました。
mysqlをインストールするときにデフォルトでenablestrictSQLモードチェックを削除するには
次に、mysqlをインストールした場合、解決策はmysqlmy.iniの構成を変更することです。
Find sql-mode in my.ini, The default is sql-mode = 'STRICT_TRANS_TABLES, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION', Modify it to sql-mode = 'NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION', just restart mysql
一緒に励まし、勉強するためにそれを記録してください。