sql >> データベース >  >> RDS >> Mysql

このエラーは何ですか?データベースクエリが失敗しました:行1の列'column_name'のデータが切り捨てられました

    '' およびnull 同じではありません。 mysqlサーバーが厳密モードの場合、列に無効なデータを渡したため、挿入を拒否します。厳密モードがないと、警告が返されます。

    mysql> create table a (a float not null);
    Query OK, 0 rows affected (0.11 sec)
    
    mysql> insert a values ('');
    Query OK, 1 row affected, 1 warning (0.05 sec)
    
    mysql> show warnings;
    +---------+------+----------------------------------------+
    | Level   | Code | Message                                |
    +---------+------+----------------------------------------+
    | Warning | 1265 | Data truncated for column 'a' at row 1 |
    +---------+------+----------------------------------------+
    1 row in set (0.00 sec)
    
    mysql> set sql_mode = 'STRICT_ALL_TABLES';
    Query OK, 0 rows affected (0.02 sec)
    
    mysql> insert a values ('');
    ERROR 1265 (01000): Data truncated for column 'a' at row 1
    

    明示的なnullを挿入する s、または挿入で列を指定しないでください。

    更新するとき、mysqlは変更されていない値を自動的に無視するため、所有しているすべての値を送信できます。



    1. HTMLリスト構造のPHP再帰メニュー

    2. 特定の日付より前のレコードを削除する

    3. テーブルまたは列がデータベースに存在するかどうかを確認するにはどうすればよいですか?

    4. ORA-01031:ビューを選択する際の権限が不十分です