Gå til innhold

Problem med å hente data fra MySQL


Anbefalte innlegg

Jeg har ett lite problem. Jeg skal hente ut noe data fra en mysql datase basert på ett navn. Dette skjer da:

 

Welcome to the MySQL monitor.  Commands end with; or \g.
Your MySQL connection id is 553 to server version: 4.0.23-nt-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> use utlaan
Database changed
mysql> SELECT email FROM users WHERE name = John Viggo Grønbech;
ERROR 1064: You have an error in your SQL syntax.  Check the manual that corresp
onds to your MySQL server version for the right syntax to use near 'Viggo Grønbe
ch' at line 1
mysql> SELECT email FROM users WHERE name = "John Viggo Grønbech";
Empty set (0.00 sec)

mysql> SELECT email FROM users WHERE id = "1";
+------------------------------+
| email                              |
+------------------------------+
| john.viggo.gronbech@******.no |
+------------------------------+
1 row in set (0.00 sec)

mysql>

 

Dere ser at det fungerer ikke når jeg prøve å hente ut ved hjelp av navnet som står registrert, men ved bruk av ID fungerer det... hvorfor? Gjøre jeg noe galt?

 

- JV -

Endret av JV
Lenke til kommentar
Videoannonse
Annonse
Jeg har ett lite problem. Jeg skal hente ut noe data fra en mysql datase basert på ett navn. Dette skjer da:

 

Welcome to the MySQL monitor.  Commands end with; or \g.
Your MySQL connection id is 553 to server version: 4.0.23-nt-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> use utlaan
Database changed
mysql> SELECT email FROM users WHERE name = John Viggo Grønbech;
ERROR 1064: You have an error in your SQL syntax.  Check the manual that corresp
onds to your MySQL server version for the right syntax to use near 'Viggo Grønbe
ch' at line 1
mysql> SELECT email FROM users WHERE name = "John Viggo Grønbech";
Empty set (0.00 sec)

mysql> SELECT email FROM users WHERE id = "1";
+------------------------------+
| email                              |
+------------------------------+
| john.viggo.gronbech@******.no |
+------------------------------+
1 row in set (0.00 sec)

mysql>

 

Dere ser at det fungerer ikke når jeg prøve å hente ut ved hjelp av navnet som står registrert, men ved bruk av ID fungerer det... hvorfor? Gjøre jeg noe galt?

 

- JV -

Du søker etter eksakt match til navnet "John Viggo Grønbech", dersom du har en stavefeil finner ikke MySQL raden.

 

Ettersom du ikke viser kolonnen 'name' blir det vanskelig å finne ut om du søker etter rett informasjon. Dersom du ikke har hele navnet tilgjengelig kan du søke etter navn som inneholder, f.eks.

 

select email from users where name like ('%grønbech%');

 

som returnerer alle rader hvor kolonnen 'name' inneholder stringen 'grønbech'. Dette er noe mer prosessor krevende enn where name = '...', og ikke like nøyaktig (ingen eksakt sammenlikning).

 

Jeg kan hjelpe deg nærmere dersom du forteller hva denne SQL setningen returnerer:

 

select email, name from users where id = "1";

 

 

Dersom du er interesert har jeg en SQL guide på nett: http://sql.devsiden.info/

 

.:BoeManE:.

Lenke til kommentar

Takk for svar..

 

Jeg løste det ved å hente informasjonen ved hjelp av id istede. Jeg kan bekrefte at navnet er HELT riktig.. har sjekket det :) men det fungerer fremdeles ikke...

Lenke til kommentar
Takk for svar..

 

Jeg løste det ved å hente informasjonen ved hjelp av id istede. Jeg kan bekrefte at navnet er HELT riktig.. har sjekket det :) men det fungerer fremdeles ikke...

Fint at du løste problemet! Det kan hende årsaken er at du har en "ø" i navnet. Dette fungerer som regel fint, men av og til har MySQL problemer med ikke-engelske tegn, spesielt fra kommandolinjen.

 

Å hente ved hjelp av ID fungerer jo 100% sikkert uansett.

 

.:BoeManE:.

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...