2012-05-15 13 views
5

Der Screenshot zeigt 3 typische Definitionen des Datentyps: ID (Autoinkrement), einen Titel und eine Zahl.Standardwerte für die Datentypen varchar und int mysql

1.- Was sind die Unterschiede zwischen: none und NULL?
2.- Muss ich für Varchar-Typen as defined: '' wählen, wenn ich eine leere Zeichenfolge möchte?
3.- Muss ich einen as defined: 0 Standardwert für autoincrement Int-Typen eingeben?

enter image description here

Antwort

7

Standard keine bedeutet, dass es keinen Standardwert. Wenn für eine Einfügung kein Wert angegeben wird, schlägt die Abfrage mit einem "Kein Standardwertfehler" fehl.

NULL ist der tatsächliche NULL-Wert. Wenn kein Wert für einen Insert angegeben wird, wird die Spalte standardmäßig auf NULL (leer) gesetzt. Für varchar können Sie den Standard auf '' setzen, aber NULL ist besser.

Autoincrement-Int-Typen sollten keinen Standardwert haben (Standard: Keine), da sie immer einen Wert haben.

+0

Um zu verdeutlichen, dass NULL als Standardwert verwendet wird, muss die Spalte NULL-Werte zulassen. –

+0

Für Integer-Typen wird NULL in 0 (Null) einfügen? –

+0

Marcus, du hast Recht - "auf einer Beilage" werde ich meine Antwort bearbeiten. –