oneside Geschrieben 16. März 2006 Teilen Geschrieben 16. März 2006 Hi Leutz, wie speichert Ihr Werte true/false oder 1/0 in einer MySQL Datenbank? Benutzt Ihr dafür A: tinyint(1) für 0=false und 1=true B: enum('Y','N') C: enum(1,0) D: char(1) für 0=false und 1=true E: noch andere? Eigentlich ist ja enum das richtige Feld dafür, ich sehe aber auch immer wieder andere Varianaten wie z.B. "D: char(1) für 0=false und 1=true" Welche Vorteile haben die einzelnen Feldtypen für diese Verwendung und wirkt sich dies auf die Abfrageperformance in irgendeiner Beziehung aus? Ich habe bis jetzt immer Variante "B: enum('Y','N')" benutzt. Gruß Oneside Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Whatever Geschrieben 16. März 2006 Teilen Geschrieben 16. März 2006 A: tinyint(1) für 0=false und 1=true Dann spart man sich in PHP (und jeder anderen Sprache, die 0 als False und den Rest als true interprtiert) nen bischen arbeit. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
oneside Geschrieben 16. März 2006 Autor Teilen Geschrieben 16. März 2006 Dann spart man sich in PHP (und jeder anderen Sprache, die 0 als False und den Rest als true interprtiert) nen bischen arbeit. Und wieso dann nicht "C: enum(1,0)"? Wo liegt der Unterschied? Ist es durch ein enum Feld in der Datenbankverwaltung nicht leichter ersichtlich, dass dieses Feld für True oder False benutzt wird? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
baba007 Geschrieben 16. März 2006 Teilen Geschrieben 16. März 2006 tinyint hat die größe 1 Byte, enum 1 oder 2 Byte. Allerdings kann Enum 65535 Werte haben und tinyint nur 256. True oder False würde ich daher mit tinyint abbilden, zumal es einfacher ist eine Zahl als ein varchar zu benutzen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
oneside Geschrieben 16. März 2006 Autor Teilen Geschrieben 16. März 2006 Jo, macht Sinn Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 16. März 2006 Teilen Geschrieben 16. März 2006 wie speichert Ihr Werte true/false oder 1/0 in einer MySQL Datenbank? MySQL kennt den Typ Boolean. Allerdings ist es (bis jetzt) nur ein Alias auf den Typ TinyInt BOOL, BOOLEAN These types are synonyms for TINYINT(1). The BOOLEAN synonym was added in MySQL 4.1.0. A value of zero is considered false. Non-zero values are considered true. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.