Matthias: MySQL -> Textfeldern einen Standard zuweisen

Hallo,

ich möchte das meine Felder in einer Tabelle Standardwerte annehmen, wenn keine Daten für die betreffenden Felder angegeben werden.

Ich bekomme jedoch die Fehlermeldung:

#1101 - BLOB/TEXT column 'status' can't have a default value

Geht das grundsätzlich nicht oder gibt es dafür einen Workaround?

Grüße, Matthias

  1. HI,
    Änderung des Spaltentyp -> BLOB/TEXT

    #1101 - BLOB/TEXT column 'status' can't have a default value

    Grüße Simone

  2. Hallo Matthias,

    #1101 - BLOB/TEXT column 'status' can't have a default value

    ja klar, siehe http://dev.mysql.com/doc/refman/5.0/en/blob.html:

    <zitat>BLOB and TEXT columns cannot have DEFAULT values.</zitat>

    Geht das grundsätzlich nicht oder gibt es dafür einen Workaround?

    Ja, das geht grundsätzlich nicht.
    Ja, sicher gibt es Workarounds, sofern Deine MySQL-Version 5.x lautet.
    Mir fallen gerade ein:

    a) Erstelle einen INSERT-Trigger, der den Standardwert erzeugt.

    b) Verwende grundsätzlich eine Stored Procedure für INSERT-Operationen.
       Die Stored Procedure erzeugt den Standardwert.

    c) Deine Anwendung sorgt für den Standardwert.

    d) Verwende VARCHAR statt TEXT oder BLOB.

    Freundliche Grüße

    Vinzenz