Ik zit sinds afgelopen weekend met een vreemd probleem en ik begrijp maar niet wat er fout is/gaat.

Voor mijn sites heb ik een cms die geruime tijd zonder problemen werkt. De database en dit script zijn niet aangepast, maar toch krijg ik sinds het weekend errors. Het updaten van één veld (release) lukt niet meer. Op diverse pagina's veroorzaakt dit veld (deze komt in meerdere tabellen en meerdere databases (voor elke site) voor) hetzelfde probleem. De query kan niet worden uitgevoerd, terwijl dit gewoon zou moeten werken (en het ook gedaan heeft).

Wanneer ik mysql_error() laat printen, toont ie nu ook niets. De sql query en andere die-message wordt wel gewoon getoond. Via phpMyAdmin ben ik er achter gekomen dat de query vastloopt door dat ene veld.
Ik kan wel via browse > edit het veld wijzigen, maar via een sql query pakt ie hem niet.
UPDATE tabel SET release = '' WHERE id = 'x' weigert ie goed uit te voeren (release staat goed geschreven, is varchar(20) en verder niets bijzonders aan).

Repair table heeft ook geen positief effect.
Iemand enig idee hoe dit probleem op te lossen is?
En veld id? Is dat een INT? ZO ja, '-s weghalen.
Misschien update van MySQL gehad?
Is een varchar.
Heb het aangepast en nu werkt het weer.
Vast weer een fijne update van de host zonder dat iets gemeld wordt (wat nogal eens voorkomt helaas).
een host is zoiets niet verplicht te melden, dat je het weet..
Nee ok, maar verhuizingen van servers waarbij je onverwachts minstens een dag down en een dag kwijt bent aan data is ook niet erg prettig, wat toch best van te voren aangekondigd zou mogen worden. Maar dat terzijde.
Vincent schreef op 29.05.2006 15:51
Heb het aangepast en nu werkt het weer.
Ik mag toch hopen dat je een betere veldnaam hebt gekozen en niet die vieze backtics in je query hebt gezet. Hiermee leer je jezelf een heel beroerd dialect van SQL aan. Ga je dan t.z.t. met andere databases werken, dan blijkt ineens dat allerlei veldnamen 'verboden' zijn. En dat had je al lang kunnen weten...

Dus nooit backtics gebruiken, verzin gewoon een betere naam. Kan niet moeilijk zijn en werkt in iedere database.
Idd andere veldnaam gebruikt. releasedate. :)

Reageren