aarbogh Skrevet 16. april 2008 Del Skrevet 16. april 2008 (endret) Hei Jeg skal sette opp en database som noen andre har laget (men som jeg ikke får tak i), men får #1064 error som jeg ikke skjønner (=kan ikke MySQL). Databasen ble skrevet for 3.6, men serveren min bruker 4.1 så jeg regner med at det er noe der.... Server version: 5.0.45-community phpMyAdmin - 2.11.4 MySQL client version: 4.1.22 Tusen takk for all hjelp! Harald Error SQL query: Documentation CREATE PROCEDURE `DeltagerlagH_Read` ( _turneringID Bigint ) NOT DETERMINISTICSQL SECURITY DEFINER COMMENT '' BEGIN SELECT deltagerlag.`lagID` , lag.`lagNavn` , lag.`klasseID` , deltagerlag.`deltagerlagID` , lag.`klubbID` FROM `deltagerlag` JOIN lag ON deltagerlag.`lagID` = lag.`lagID` JOIN turnering ON turnering.`turneringID` = deltagerlag.`turneringID` WHERE `deltagerlag`.`turneringID` = _turneringID AND lag.klasseID = "1"; MySQL said: Documentation #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 '' at line 10 Edit: Vedlagt ligger hele sql "basen" jeg prøver å sette opp. Edit2: [løst] UVR.txt Endret 17. april 2008 av spurious Lenke til kommentar
Ueland Skrevet 16. april 2008 Del Skrevet 16. april 2008 Du kjører MysQL 5x, ikke 4x eller 3x The error 1064 occurs due to Mysql version mismatch,because differntversions have differnt reserved words,which if used by a previous version causes the error to occur. The simplest and most effective solution for it is. -when using phpMyadmin,select the "compatibility mode" & select the target db version from the drop down box. -when using MySql administrator,while backing up choose "compatibility mode" in adavanced tab , and while restoring through mysql administrator ,click "auto-detect file charater set" if backup was not made using mySql administrator. the default file characer set used by mysql admministrator is utf8. Prøv det Lenke til kommentar
aarbogh Skrevet 16. april 2008 Forfatter Del Skrevet 16. april 2008 5.0? hehe... ja det forteller vel litt om hvor mye kunnskap om MySQL jeg har... Men jeg har faktisk prøvd SQL kompatibilitetsmodus! Både den som heter MYSQL323 og MYSQL40 uten at det hjalp. Jeg har også vært innom "reserved words", men jeg kan ikke si at jeg så noen ord som ble brukt feil. Jeg har også prøvd uten fnutter (´) men heller ikke det hjalp mvh Harald Lenke til kommentar
aarbogh Skrevet 17. april 2008 Forfatter Del Skrevet 17. april 2008 (endret) Jeg fant en mulig løsning Delimiter! Setter jeg Delimiter til å være // og legger til // på slutten av kodesnutten så funker det CREATE PROCEDURE `DeltagerlagH_Read`( _turneringID Bigint) NOT DETERMINISTIC SQL SECURITY DEFINER COMMENT '' Begin Select deltagerlag.`lagID`, lag.`lagNavn`, lag.`klasseID`, deltagerlag.`deltagerlagID`, lag.`klubbID` from `deltagerlag` join lag on deltagerlag.`lagID` = lag.`lagID` join turnering on turnering.`turneringID` = deltagerlag.`turneringID` Where `deltagerlag`.`turneringID` = _turneringID AND lag.klasseID = "1"; end; // Fant tipset på create-procedure. Men spørsmålet mitt blir nå hvordan jeg skal editiere uvr.sql fila slik at den funker. For når jeg oppretter tabellene trenger jeg vel Delimiter til å være ;, mens ved "Create Procedure" så må jeg endre den til //. Må jeg endre alle "Create Procedure" til: delimiter // CREATE PROCEDURE `DeltagerlagH_Read`( _turneringID Bigint) NOT DETERMINISTIC SQL SECURITY DEFINER COMMENT '' Begin Select deltagerlag.`lagID`, lag.`lagNavn`, lag.`klasseID`, deltagerlag.`deltagerlagID`, lag.`klubbID` from `deltagerlag` join lag on deltagerlag.`lagID` = lag.`lagID` join turnering on turnering.`turneringID` = deltagerlag.`turneringID` Where `deltagerlag`.`turneringID` = _turneringID AND lag.klasseID = "1"; end; // delimiter; Harald Endret 17. april 2008 av spurious Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå