[MYSQL/PHP] SQL query op de server werkt anders dan verwacht

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb een database op een server staan en op mijn laptop. De records zijn identiek (de laptop wordt voor test doeleinden gebruikt). Als ik ga zoeken in de database op de laptop naar b.v. no344 dan krijg ik de records te zien die te maken hebben met een hp cartridge. Als ik dezelfde code op de server uitvoer dan geeft de database geen vermeldingen. Eerste gedachte was een fout in de code, echter als er met Navicat de SQL instructie op de server wordt gegeven, dan worden er geen records gevonden. Voer ik de instructie uit op de locale database, dan wordt levert de Query wel resultaten op.
De MYSQL database op de server heeft dezelfde versie als op de laptop. Alle instellingen zijn gelijk.


Heeft iemand een idee?

[ Voor 50% gewijzigd door Verwijderd op 13-02-2009 16:55 ]


Acties:
  • 0 Henk 'm!

  • Johnny
  • Registratie: December 2001
  • Laatst online: 21-09 14:39

Johnny

ondergewaardeerde internetguru

Andere indexen? Gebruik je fultext search? Standaard worden woorden van minder dan 4 letters niet geindexeerd, en is er een lijst met stopwoorden die ook niet worden meegenomen, dus ligt de oorzaak in je configuratiebestanden.

Aan de inhoud van de bovenstaande tekst kunnen geen rechten worden ontleend, tenzij dit expliciet in dit bericht is verwoord.


Acties:
  • 0 Henk 'm!

  • MueR
  • Registratie: Januari 2004
  • Laatst online: 21-09 14:53

MueR

Admin Tweakers Discord

is niet lief

Zonder code is het lastig te zeggen, helemaal als ook de MySQL error meldingen niet worden gegeven (if any). Ik gok dat je geen fatsoenlijke database verbinding hebt, maar doordat je errors niet toont, je niet ziet dat er iets fout is.

Anyone who gets in between me and my morning coffee should be insecure.


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Je zult toch wat meer informatie moeten geven. Wij kunnen niet in je data model/sql kijken wat er mis gaat. Je zult dus toch wat verder moeten debuggen.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
De SQL instructie ziet er als volgt uit:
SELECT * FROM `tbl_artikelen_import` WHERE tbl_artikelen_import.Lev_id = 1 AND tbl_artikelen_import.intresse=0 AND MATCH(tbl_artikelen_import.`artikelnr`, tbl_artikelen_import.`omschrijving`) AGAINST('*no344*') ORDER BY artikelnr ASC

De databases zijn identiek, dus ook de fulltext index.
Resultaat in Navicat op de laptop is: 3 gevonden records
Resultaat in Navicat op de server is: geen resultaat gevonden.

De connectie met de database is op orde

Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
En doe eens een query zonder de match. ( Overigens zijn de databases dus niet identiek, want dan had je wel dezelfde resultaten gehad. ).

Het zou me niets verbazen als de FULL-TEXT index corrupt is of iets dergelijks.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
De fultext index index verwijderd en opnieuw aangemaakt. Ook een repair op de database uitgevoerd, echter zonder resultaat. de query blijft geen resultaten geven.

Acties:
  • 0 Henk 'm!

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Exporteer de server-db eens en importeer die eens opnieuw op je desktop. Want blijkbaar is toch niet alles identiek.

Heel simpel gezegd : Als de db + configs gelijk zijn krijg je dezelfde resultaten. Niet dezelfde resultaten betekent dus niet gelijk.
Pagina: 1