[erledischt] phpmyadmin vs. ich

ich weiss, dass ich jetzt schon verloren habe, nee scherz :wink:
wollt mal wieder ne tabelle erstellen, phpmyadmin liefert folgenden code.

[quote]CREATE TABLE bcg_log.righ (

user TINYTEXT NOT NULL DEFAULT ‘none’,
righs INT( 7 ) NOT NULL DEFAULT ‘0000000’,
UNIQUE (
user
)
) ENGINE = MYISAM[/quote] und MySQL folgenden Fehler: [quote]#1101 - BLOB/TEXT column ‘user’ can’t have a default value [/quote]

nee, ich weiss schon was das bedeutet, so viel englisch kann auch ICH :slight_smile:
aber woher kommt das DEFAULT im code?
welche eingabe hab ich zu wenig / zu viel gemacht?

danke für die hilfe

MfG

ich habs :p :p :p
jetzt kommt einfach nen anderen fehler den code hab ich so angepasst: [code]CREATE TABLE bcg_log.righ (

user TINYTEXT( 11 ) NOT NULL ,
righs INT( 7 ) NOT NULL DEFAULT ‚0000000‘,
UNIQUE (
user
)
) ENGINE = MYISAM [/code]
und der fehler sich so:[quote]#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '( 11 ) NOT NULL,
righs INT( 7 ) NOT NULL DEFAULT ‚0000000‘,
UNIQUE (
user’ at line 3
[/quote]
MfG

Guten Abend,

das Problem ist relativ einfach zu verstehen. Ein Feld vom Typ Text, darf keine Größe haben und keinen Default Wert. Da du user aber gleichzeitig als unique deklarierst, welches die feste Größe nun einfach vorraussetzt (schon allein wegen dem vergleichen können), kommt es immerwieder zum Fehler.
Ich würde dir also raten, das Feld user als VarChar zu deklarieren, mit 200 Zeichen solltest du da eigentlich kein Problem bekommen und es klappt auch mit dem Unique.

Code:

 CREATE TABLE `bcg_log`.`right` (
`user` VARCHAR( 200 ) NOT NULL ,
`rights` INT( 7 ) NOT NULL DEFAULT '0000000',
UNIQUE (
`user`
)
) ENGINE = MYISAM 

sollte klappen…

Greez

ach so… :slight_smile:
jetzt gehts
Danke
MFG

closen wär net schlecht