Autor Zpráva
OndrejCZE
Profil *
Ahoj, pouzivam kod pro vytvoreni tabulky, ten ale nejede, prestoze je exportovany z phpMyAdmina. Prosim poradite jak mam kod opravit? Diky

Kod:
CREATE TABLE `admins` (
`id` int(11) NOT NULL auto_increment,
`login` varchar(8) collate utf8_czech_ci NOT NULL default '',
`fullname` varchar(255) collate utf8_czech_ci NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=1;

A chyba:
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 '; CREATE TABLE `odpovedi` ( `id` int(11) NOT NULL auto_increment, `ot' at line 6
DJ Miky
Profil
Odstraň tohle:
ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=1
Možná to pomůže...
OndrejCZE
Profil *
To jsem zkousel. I tak diky
Jan Tvrdík
Profil
smím vědět, co nefunguje?
nightfish
Profil
smím vědět, co nefunguje?
A chyba:
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 '; CREATE TABLE `odpovedi` ( `id` int(11) NOT NULL auto_increment, `ot' at line 6
Jan Tvrdík
Profil
už jsem to pochopil
řešením je odstranění toho středníku na konec toho dotazu:

$dotaz = mysql_query("

CREATE TABLE `admins` (
`id` int(11) NOT NULL auto_increment,
`login` varchar(8) collate utf8_czech_ci NOT NULL default '',
`fullname` varchar(255) collate utf8_czech_ci NOT NULL default '',
PRIMARY KEY (`id`)
)");
nightfish
Profil
Jan Tvrdík
středník na konci SQL dotazu je naprosto legální prostředek, jak dotaz ohraničit - tzn. je-li tam, nemůže to být považováno za chybu, imho bude chyba někde jinde

akorát OndrejCZE neposkytl celý kód (ve výpisu chyby se objevuje ještě tabulka 'odpovedi'), takže můžeme jen věštit z křišťálové koule
OndrejCZE
Profil *
Vestit z kristalove koule, to je presne ono :) Cely kod vcetne mysql_query je nize. Mimochodem nefunkcost je docela zvlastni protoze jsem dal export v phpMyAdminovi a umazal komentare.

KOD:

mysql_query("
CREATE TABLE `admins` (
`id` int(11) NOT NULL auto_increment,
`login` varchar(8) collate utf8_czech_ci NOT NULL default '',
`fullname` varchar(255) collate utf8_czech_ci NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=1;


CREATE TABLE `odpovedi` (
`id` int(11) NOT NULL auto_increment,
`otazkaid` int(11) NOT NULL default '0',
`studentid` int(11) NOT NULL default '0',
`value` char(1) collate utf8_czech_ci NOT NULL default '',
`testid` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=1;


CREATE TABLE `otazky` (
`id` int(11) NOT NULL auto_increment,
`forclass` varchar(3) collate utf8_czech_ci NOT NULL default '',
`otazka` text collate utf8_czech_ci NOT NULL,
`testid` int(11) NOT NULL default '0',
`odpovedA` varchar(255) collate utf8_czech_ci NOT NULL default '',
`odpovedB` varchar(255) collate utf8_czech_ci NOT NULL default '',
`odpovedC` varchar(255) collate utf8_czech_ci NOT NULL default '',
`odpovedD` varchar(255) collate utf8_czech_ci NOT NULL default '',
`odpoved` varchar(2) collate utf8_czech_ci NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=1;

CREATE TABLE `testy` (
`id` int(11) NOT NULL auto_increment,
`forclass` varchar(3) collate utf8_czech_ci NOT NULL default '',
`name` varchar(255) collate utf8_czech_ci NOT NULL default '',
`active` varchar(6) collate utf8_czech_ci NOT NULL default 'false',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=1;

CREATE TABLE `user` (
`id` int(11) NOT NULL auto_increment,
`nickname` varchar(7) collate utf8_czech_ci NOT NULL default '',
`password` varchar(255) collate utf8_czech_ci NOT NULL default '',
`fullname` varchar(255) collate utf8_czech_ci NOT NULL default '',
`trida` varchar(3) collate utf8_czech_ci NOT NULL default '',
`lasttesttime` bigint(20) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=1;

CREATE TABLE `znamky` (
`id` int(11) NOT NULL auto_increment,
`studentid` int(11) NOT NULL default '0',
`student_class` varchar(3) collate utf8_czech_ci NOT NULL default '',
`testid` int(11) NOT NULL default '0',
`hodnota` tinyint(4) NOT NULL default '0',
`date` varchar(9) collate utf8_czech_ci NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=1;")
Joker
Profil
Nejsem si jistý, ale:

`otazkaid` int(11) NOT NULL default '0',
(a další)

dáváte číselnému sloupci jako výchozí hodnotu řetězec.
OndrejCZE
Profil *
Ptoblem byl v tom ze jsem do mysql_qurey daval vic mysql prikazu. Kdyz jsem vse rozdelil do samostatnych prikazu (kazdy v jednotlivem mysql_query) tak vse jede. Diky
Toto téma je uzamčeno. Odpověď nelze zaslat.

0