Как я могу создать логический столбец MySQL и присвоить значение 1, изменяя тот же столбец?
Чтобы присвоить значение 1 при изменении, используйте MySQL DEFAULT. Это само приведет к вводу 1, если ничего не будет вставлено в тот же столбец при использовании команды INSERT.
Сначала создадим таблицу:
mysql> create table DemoTable
(
isAdult int
);
Query OK, 0 rows affected (1.39 sec)
Ниже показано, как вы можете присвоить значение 1 по умолчанию уже созданному столбцу:
mysql> alter table DemoTable CHANGE isAdult isAdult BOOLEAN DEFAULT '1' NOT NULL;
Query OK, 0 rows affected (1.18 sec)
Records: 0 Duplicates: 0 Warnings: 0
Вставьте несколько записей в таблицу с помощью команды вставки:
mysql> insert into DemoTable values();
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values();
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values(0);
Query OK, 1 row affected (0.15 sec)
Отобразите все записи из таблицы с помощью оператора select:
mysql> select *from DemoTable;
Это даст следующий результат:
+---------+
| isAdult |
+---------+
| 1 |
| 1 |
| 0 |
+---------+
3 rows in set (0.00 sec)