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

MySQLにブールフィールドを追加するにはどうすればよいですか?


tinyint(1)またはboolまたはbooleanを使用できます。すべて同義語です。 boolまたはbooleanデータ型を使用する場合、それは内部的にtinyint(1)に変更されます。

PHPでは、値0はfalseを表し、1はtrueを表します。 0以外の数値も当てはまります。

テーブルを使用して、boolまたはbooleanの内部表現を確認してみましょう。テーブルを作成するためのクエリは次のとおりです。

mysql> create table AddBoolDemo
-> (
-> isToggle bool
-> );
Query OK, 0 rows affected (1.24 sec)

テーブルのDDLを確認するためのクエリは、次のとおりです。

SHOW CREATE TABLE yourTableName;

内部でtinyint(1)に変換されるboolの表現を確認してみましょう。次に、テーブルAddBoolDemoを確認します。

mysql> show create table AddBoolDemo\G

以下は出力です。

*************************** 1. row ***************************
Table: AddBoolDemo
Create Table: CREATE TABLE `addbooldemo` (
`isToggle` tinyint(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
1 row in set (0.00 sec)

挿入コマンドを使用して、テーブルにtrueまたはfalse、あるいは1または0のリテラルを追加します。

mysql> insert into AddBoolDemo values(true);
Query OK, 1 row affected (0.19 sec)

mysql> insert into AddBoolDemo values(false);
Query OK, 1 row affected (0.19 sec)

mysql> insert into AddBoolDemo values(1);
Query OK, 1 row affected (0.10 sec)

mysql> insert into AddBoolDemo values(0);
Query OK, 1 row affected (0.18 sec)

selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです。

mysql> select *from AddBoolDemo;

以下は出力です。

+----------+
| isToggle |
+----------+
| 1        |
| 0        |
| 1        |
| 0        |
+----------+
4 rows in set (0.00 sec)

  1. MySQLテーブルのタイムスタンプフィールドを更新するにはどうすればよいですか?

    まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> PunchOut timestamp,    -> PunchStatus tinyint(1)    -> ); Query OK, 0 rows affected (0.51 sec) 挿入コマンド-を使用して、テーブルにいくつかのレ

  2. 現在の日付を既存のMySQLテーブルに追加するにはどうすればよいですか?

    既存のテーブルを更新するには、UPDATEを使用します。それで、現在の日付を設定するには、CURDATE()メソッドを使用します- update yourTableName set yourCoumnName=CURDATE();を更新します まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> DueDate datetime -> ); Query OK, 0 rows affected (0.58 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert