Chcę utworzyć tabelę w MySQL z kolumną boolean
, której domyślną wartością jest false
. Ale przyjmuje domyślną wartość NULL ...Utwórz kolumnę boolowską w MySQL z wartością domyślną?
89
A
Odpowiedz
152
Należy podać wartość 0
(co oznacza wartość false) lub 1
(co oznacza wartość true) jako wartość domyślną. Oto przykład:
create table mytable (
mybool boolean not null default 0
);
FYI: boolean
jest aliasem dla tinyint(1)
.
Oto dowód:
mysql> create table mytable (
-> mybool boolean not null default 0
-> );
Query OK, 0 rows affected (0.35 sec)
mysql> insert into mytable() values();
Query OK, 1 row affected (0.00 sec)
mysql> select * from mytable;
+--------+
| mybool |
+--------+
| 0 |
+--------+
1 row in set (0.00 sec)
FYI: Moje testy przeprowadzono na następujących wersji MySQL:
mysql> select version();
+----------------+
| version() |
+----------------+
| 5.0.18-max-log |
+----------------+
1 row in set (0.00 sec)
8
Wykorzystanie ENUM w MySQL dla true/false daje i przyjmuje prawdziwe/false wartości bez żadnego dodatkowego kodu.
ALTER TABLE `itemcategory` ADD `aaa` ENUM('false', 'true') NOT NULL DEFAULT 'false'
Powiązane problemy
- 1. ALTER TABLE: Dodaj nową kolumnę boolowską z wartością domyślną i pole wyboru
- 2. Czy mogę utworzyć kolumnę datetime z wartością domyślną w sqlite3?
- 3. Kolumna logiczna w HSQLDB z wartością domyślną
- 4. Dodaj kolumnę do ramki danych z wartością domyślną
- 5. ActiveAdmin - Filtr z wartością domyślną
- 6. Wyliczanie dwóch członków w porównaniu z wartością boolowską
- 7. Używanie wiązania attr w Knockout z wartością boolowską
- 8. Slick porównać kolumnę tabeli z wartością zerową
- 9. pyspark: Utwórz kolumnę MapType z istniejących kolumn
- 10. interaktywne polecenia emacs z wartością domyślną
- 11. Schemat XML: "use =" required "" z wartością domyślną
- 12. Urządzenia Django zapisują z domyślną wartością
- 13. Właściwość zależności z wartością domyślną Rzucanie StackOverflowException
- 14. Scala: Używanie HashMap z domyślną wartością
- 15. Jak ustawić datownik z domyślną wartością PostgreSQL jak "RRRRMM"?
- 16. mysql ustaw wartość domyślną pola na inną kolumnę
- 17. SQL do dodania kolumny z wartością domyślną - Access 2003
- 18. Jak wypełnić kolumnę jedną wartością w Pandach?
- 19. Dodaj kolumnę do tabeli z wartością domyślną równą wartości istniejącej kolumny
- 20. Jak zmienić kolumnę i zmienić wartość domyślną?
- 21. Wprowadzane przez użytkownika w pliku wsadowym z wartością domyślną
- 22. Utwórz kolumnę jako pole wyboru.
- 23. Wybierz kolumnę manekina z fikcyjną wartością w SQL?
- 24. Utwórz domenę w MySQL
- 25. Opcjonalne parametry zapytania (z wartością domyślną) z compojure-api
- 26. Jak usunąć kolumnę z tabeli w MySQL
- 27. MySQL - Utwórz unikalną parę wartości
- 28. Jak zrobić jackson nie serializować prymitywy z wartością domyślną
- 29. Utwórz widok z kolumną num_rows - MySQL
- 30. Tablica PHP z domyślną wartością dla nieistniejących indeksów
Ładne potwierdzenie –
Czy to prawda? W skryptach powłoki 0 może oznaczać udane lub "prawdziwe". Byłoby miło, gdyby MySQL rzeczywiście zwróciło "true" i "false", tak abyśmy nie musieli polegać na kodzie decydującym o wartości. – tudor
Nawiasem mówiąc, ponieważ boolean jest aliasem dla tinyint (1), oznacza to, że możesz ustawić wartości logiczne na liczby inne niż 0 i 1 i nie będzie narzekać! Oznacza to, że jeśli przypadkowo zwiększysz lub zmniejszysz pole, możesz zepsuć swoje dane! : -O Zalecam używanie zamiast tego pola ENUM. – tudor