Det finns ingen boolean i MySQL.
Om man vill använda minsta möjliga minne så använder man char(0) och kollar med is null eller is not null.
Annars är det som du har gjort, möjligen att man använda tinyint istället.
6 svar · 224 visningar · startad av Jörgen HP
Hej!
Har gjort en liten patent i mySQL för att åstadkomma subtypen boolean.
smallInt standardvärde 0, där 0 är false och 1 är true.
Borde väl gå att ange boolean i mySQL eftersom både c, c++, java har en standard subtyp "boolean", skulle vara lite klantigt att inte kunna ange det i en sådan "kraftfull" DB som mySQL är när densamme oftast används till dessa språken.
Men hur gör man? Använder PhpMyAdmin.
mvh Jörgen
Det finns ingen boolean i MySQL.
Om man vill använda minsta möjliga minne så använder man char(0) och kollar med is null eller is not null.
Annars är det som du har gjort, möjligen att man använda tinyint istället.
enum('0','1') default 0
är också ett alternativ.
Hej!
En fråga till som berör nästan samma sak. Jag har angivit fältet dteDatum som DateTime för att få förmatet åååå-mm-dd hh:mm:ss.
Försökte skriva standardvärden på lite olika sätt; Now(), =Nu(), =Now() och Nu() och då blir det 0000-00-00 00:00:00 som värde när man lägger till en ny post. Kan man inte få datum och tid automatiskt när man lägger till en post?
Gjorde så här vilket funkar, men är lite omständigt:
Dim Tid
Tid = Now()
Också skickade jag in variabeln Tid i Insert frågan.
Tips på andra alternativ?
mvh Jörgen
Det går inte att använda funktioner som default-värden i Mysql.
Du får använda en timestamp kolumn i stället.
http://www.mysql.com/doc/D/A/DATETIME.html
Jag tror inte kan ha funktioner som standardvärde för datum/tid kolumner. Ett alternativ är att använda TIMESTAMP(14)
MySQL manualen i HTML-Hjälp format finns här: (gôr bra...!) http://www.havlicek.f2s.com/download/myman.php
Bugar och bockar för tipsen! :)