Seite 1 von 1

MySQL create table

Verfasst: Do 24.Jul, 2008 14:23
von bce
hab grad nen geistigen hänger :wall:

möchte eine datenbank in einem skript anlegen.

das funktioniert:

Code: Alles auswählen

$sql_create = 'CREATE TABLE tab (
  id int(11) NOT NULL auto_increment,
  typ char(1) default \'0\',
  besitzer varchar(50) default \'0\',
  PRIMARY KEY  (id)
) TYPE=MyISAM;
';
und das nicht:

Code: Alles auswählen

$sql_create = 'CREATE TABLE tab (
  id int(11) NOT NULL auto_increment,
  typ char(1) default \'0\',
  besitzer varchar(50) default \'0\',
  show tinyint(1) default 0,
  PRIMARY KEY  (id)
) TYPE=MyISAM;
';

es liegt also an der zeile

Code: Alles auswählen

  show tinyint(1) default 0,
was passt der db nicht?
??

Verfasst: Do 24.Jul, 2008 20:45
von oxpus
Welche Fehlermeldung erscheint denn?

BTW:
Seit wann ist 0 der Default-Wert bei Strings wie für typ und besitzer?

Verfasst: Do 24.Jul, 2008 22:09
von bce
MySQL-Fehlermeldung: 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 'show tinyint(1) default 0, PRIMARY KEY (id) ) TYPE=MyISAM' at line 5

edit: funktioniert nun! mysql hat irgendein problem mit "show" als feldname. hab "show" geändert und es geht

Verfasst: Fr 25.Jul, 2008 09:46
von oxpus
Scheint also ein reserviertes Wort zu sein.
Hm, wieder was gelernt...