Ну, и для сравнения, и для меня работают 0 и 1:
Вот поле типа бит (1), одна строка, поле в настоящее время ложно:
mysql> select isfeatured from nodes where isfeatured = 1;
Empty set (0.00 sec)
mysql> select isfeatured from nodes where isfeatured = 0;
+------------+
| isfeatured |
+------------+
| |
+------------+
1 row in set (0.00 sec)
Обновить изменение от 0 до 1 в isfeatured, которое имеет тип bit (1) ...
mysql> update nodes set isfeatured=1 where isfeatured = 0;
Query OK, 1 row affected (0.05 sec)
Rows matched: 1 Changed: 1 Warnings: 0
Одна строка изменена ... Попробуйте еще раз:
mysql> update nodes set isfeatured=1 where isfeatured = 0;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 0 Changed: 0 Warnings: 0
Строки не изменились, как ожидалось.
Те же запросы выбора, что и раньше:
mysql> select isfeatured from nodes where isfeatured = 1;
+------------+
| isfeatured |
+------------+
| |
+------------+
1 row in set (0.00 sec)
mysql> select isfeatured from nodes where isfeatured = 0;
Empty set (0.01 sec)
Видите, это работает.
Я использую:
mysql Ver 14.14 Distrib 5.5.31, для debian-linux-gnu (x86_64) с использованием readline 6.2
и
/ usr / sbin / mysqld Ver 5.5.31-0 + wheezy1 для debian-linux-gnu в x86_64 ((Debian))