Hej,
Jag har hållit på och utvecklat en databas lokalt på min bärbara dator och nu ska jag exportera den så jag kan ladda upp den på en server. Det gick bra när jag exporterade databasen från servern till min bärbara dator förut men nu åt andra hållet går det inget bra.
Dett är det första stycke som MySQL-motorn klagar över:
CREATE TABLE `tblairport` (
`airportID` int( 11 ) NOT NULL AUTO_INCREMENT ,
`airport_code` varchar( 7 ) NOT NULL default '',
`name` varchar( 35 ) NOT NULL default '',
`elevation` int( 11 ) NOT NULL default '0',
`coordinates` varchar( 20 ) default NULL ,
`atc` int( 11 ) NOT NULL default '0',
`frequency` varchar( 15 ) default NULL ,
`fuel` varchar( 20 ) default NULL ,
`cityID` int( 11 ) NOT NULL default '0',
PRIMARY KEY ( `airportID` ) ,
KEY `airport_index_1` ( `cityID` )
) ENGINE = InnoDB
Felmeddelandet lyder så här:
#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 'ENGINE=InnoDB' at line 31
Jag har försökt söka rätt på vad 1064 betyder men inte riktigt hittat rätt. Någon som på rak arm kan se vad som är fel i ovanstående sql-sats? :)
cyprysMedlem sedan dec. 20003 563 inlägg Vad kör du för version av mySQL?
Funkar utmärkt på 4.1.12.
Gick igenom den fil där jag har alla ursprungliga SQL-satser när jag skapar mina tabeller.
I tabellen tblMember ser sql-satsen ursprungligen ut så här några rader från slutet:
membershiplevelID INT NOT NULL,
INDEX member_index_1 (membershiplevelID),
PRIMARY KEY (memberID),
FOREIGN KEY (membershiplevelID) REFERENCES tblMembershipLevel (membershiplevelID)
) TYPE=INNODB;
När phpMyAdmin exporterar ser det ut så här:
membershiplevelID int(11) NOT NULL default '0',
PRIMARY KEY (memberID),
KEY member_index_1 (membershiplevelID)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Det känns som att något blir fel men jag vet inte riktigt hur och varför när jag exporterar?!
:OO
cyprys skrev:
Vad kör du för version av mySQL?
Jag kör en bundle som heter WAMP som innehåller Apache, MySQL och phpMyAdmin.
Kör med MySQL 4.1.10a...
Bifogar en bild på de export-settings som jag utnyttjat...
MatteMedlem sedan aug. 20002 975 inlägg Ändrar du "SQL-export-kompatibility" till "MYSQL40" så tror jag det ska fixa sig.
Matte skrev:
Ändrar du "SQL-export-kompatibility" till "MYSQL40" så tror jag det ska fixa sig.
Gjorden den ändringen och då gick det bra!
Nu när jag laddat upp hela databasen klagar mysql på att tabellen tblMember inte finns. Följande felmeddelande fick jag: "Table 'databasnamn.tblMember' doesn't exist".
Jag har ju själv sett att den finns där fysiskt efter att jag importerade den. Någon aning om vad detta kan bero på?
Tror jag kom på vad det var. Uppenbarligen är MySQL känsligt för om det är stora eller små bokstäver i tabellnamnet.
Tidigare när jag skapade tabellnamn gick det bra med namn så som "tblMember", där M var stor bokstav. Nu måste det ha hänt något när jag exporterade databasen för nu verkar det som att jag måste ändra alla dessa tabellnamn på hela min sida i de olika sqlsträngarna för att få det att fungera igen... Surt! :l
Problemet löst genom att döpa om de importerade tabellerna... :stud Varför ska saker och ting va så lätt för haha :bla