MySQLのDECIMALにFLOAT値が挿入されたときに警告メッセージを表示しますか?
データ型がDECIMALの一時テーブルを作成して、float値がint列に挿入されたときに警告を受け取ることができます。 SHOWWARNINGSを使用して同じ警告を表示します。
理解するためのテーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです。
mysql> create temporary table WarningDemo -> ( -> Value DECIMAL -> ); Query OK, 0 rows affected (0.13 sec)
挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。クエリは次のとおりです-
mysql> insert into WarningDemo values(9.80); Query OK, 1 row affected, 1 warning (0.03 sec)
ここで警告が表示されます。 SHOWコマンドを使用して警告を確認しましょう。構文は次のとおりです-
SHOW WARNINGS;
クエリは次のとおりです-
mysql> show warnings;
出力
+-------+------+--------------------------------------------+ | Level | Code | Message | +-------+------+--------------------------------------------+ | Note | 1265 | Data truncated for column 'Value' at row 1 | +-------+------+--------------------------------------------+ 1 row in set (0.00 sec)
selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-
mysql> select *from WarningDemo;
出力
+-------+ | Value | +-------+ | 10 | +-------+ 1 row in set (0.00 sec)
-
MySQLのテーブルAと比較しているときに、データがテーブルBにない場合は、データをテーブルCに挿入しますか?
これには、テーブルAとBで左結合を使用します。最初のテーブルを作成しましょう- mysql> create table demo20 −> ( −> id int, −> name varchar(20) −> ); Query OK, 0 rows affected (1.87 sec) 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 mysql> insert into demo20 values(100,'John'); Query OK, 1 row affect
-
MySQLのデータベースに挿入するときにdecimal(19、2)の値を変更しますか?
正確な実際の値を格納するには、小数点以下2桁のtruncate()を使用する必要があります。テーブルを作成しましょう- 以下は、テーブルを作成するためのクエリです。 mysql> create table demo59 −> ( −> price decimal(19,2) −> ); Query OK, 0 rows affected (1.12 sec) 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 mysql> insert into demo59 values(truncate(15.346,