MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

NOT NULLとして定義されているMySQL列にゼロまたは空の文字列を挿入するにはどうすればよいですか?


列「NOTNULL」を宣言することは、この列がNULL値ではなくゼロ(0)を受け入れ、空の文字列自体が値であることを意味します。したがって、NOT NULLとして定義されているMySQL列にゼロまたは空の文字列を挿入する場合、問題はありません。 0と空の文字列をNULLと比較すると、明らかになります-

mysql> Select 0 IS NULL, 0 IS NOT NULL;
+-----------+---------------+
| 0 IS NULL | 0 IS NOT NULL |
+-----------+---------------+
|         0 |             1 |
+-----------+---------------+
1 row in set (0.00 sec)

上記の結果セットは、ゼロ(0)がNULLではないことを示しています。 NULLは値がないことを意味することがわかっているので、ゼロ(0)自体が値であることを意味します。

mysql> Select '' IS NULL, '' IS NOT NULL;
+------------+----------------+
| '' IS NULL | '' IS NOT NULL |
+------------+----------------+
|          0 |              1 |
+------------+----------------+
1 row in set (0.00 sec)

上記の結果セットは、空の文字列(‘’)がNULLではないことを示しています。 NULLは値がないことを意味することがわかっているため、空の文字列(‘’)自体が値であることを意味します。

mysql> create table test(id int NOT NULL, Name Varchar(10));
Query OK, 0 rows affected (0.19 sec)

mysql> Insert into test6(id, name) values('1', 'Gaurav'),('0','Rahul'),('','Aarav');
Query OK, 3 rows affected, 1 warning (0.08 sec)
Records: 3 Duplicates: 0 Warnings: 1

Warning (Code 1366): Incorrect integer value: '' for column 'id' at row 3

mysql> Select * from test;
+----+--------+
| id | Name |
+----+--------+
|  1 | Gaurav |
|  0 | Rahul  |
|  0 | Aarav  |
+----+--------+
3 rows in set (0.00 sec)

上記の結果セットから、NOT NULLとして宣言されている列にゼロ(0)の空の文字列(‘’)を挿入できることがわかります。


  1. Javaを使用してDATEをMySQL列の値に挿入するにはどうすればよいですか?

    このために、JavaのPreparedStatementを使用できます。まず、列の1つがDATE型のArrivalDateであるテーブルを作成しましょう- mysql> create table DemoTable(    PassengerId int,    PassengerName varchar(40),    ArrivalDate date ); Query OK, 0 rows affected (0.82 sec) 日付を挿入するためのJAVAコードは次のとおりです- import java.sql.Conn

  2. Javaを使用してMySQLテーブルに1つの列のみを挿入するにはどうすればよいですか?

    Java-MySQL接続コードでINSERTINTOステートメントを使用して列を挿入します。 まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Name varchar(20)    -> ); Query OK, 0 rows affected (0.54 sec) これは、MySQLテーブルに1つの列のみを挿入するJavaコードです。 例 import java.sql.Connection; import java.sql.Driv