Marvin Esse: PhpMyAdmin kann eine einzelne Tabelle nicht mehr anzeigen

Hallo,

ich scheine heute irgendwie Mist gebaut zu haben. Keine Ahnung wie das passiert ist und wie ich es wieder gelöst bekomme...

Eigentlich wollte ich, wie so oft, einfach eine SQL-Abfrage eingeben: select * from tabelle where length(feld1) < 17 AND reserve <> 'X'

Wie auch immer ich das hinbekommen habe, aber wenn ich ein SQL-Statement zum Anzeigen von Datensätzen abschicken möchte, erscheint die Fehlermeldung vom PhpMyAdmin ich hätte einen SQL-Fehler #1064 in der Nähe von "ANDreserve<>'X'.

Da es meine Seiten selber nicht beeinträchtigt, aber auf mehreren PCs auftritt, ist wohl nur PhpMyAdmin davon betroffen. Testweise hatte ich die Tabelle kopiert (nach Tabelle1) und diese war fehlerfrei. Original gelöscht und von Kopie wieder zurückkopiert, tritt der Fehler aber wieder auf. Operationen wie Analyze, Optimize, Repair, Drop funktionieren scheinbar alle problemlos.

Was hab ich da geschafft und wie werde ich es wieder los?

LG Marvin

  1. Tach!

    Eigentlich wollte ich, wie so oft, einfach eine SQL-Abfrage eingeben: select * from tabelle where length(feld1) < 17 AND reserve <> 'X'

    Wie auch immer ich das hinbekommen habe, aber wenn ich ein SQL-Statement zum Anzeigen von Datensätzen abschicken möchte, erscheint die Fehlermeldung vom PhpMyAdmin ich hätte einen SQL-Fehler #1064 in der Nähe von "ANDreserve<>'X'.

    Da es meine Seiten selber nicht beeinträchtigt, aber auf mehreren PCs auftritt, ist wohl nur PhpMyAdmin davon betroffen.

    An einem Fehler, den der MySQL-Server meldet, nach einer händisch eingegebenen SQL-Query, hat der phpMyAdmin keine Schuld und der geht auch nicht weg, wenn man ihn anderswo wiederholt.

    Der Text in der Meldung stimmt nicht mit der gezeigten Query überein. Ist das ein Kopierfehler oder steht da wirklich kein Leerzeichen zwischen AND und reserve?

    dedlfix.

    1. Hi,

      An einem Fehler, den der MySQL-Server meldet, nach einer händisch eingegebenen SQL-Query, hat der phpMyAdmin keine Schuld und der geht auch nicht weg, wenn man ihn anderswo wiederholt.

      Das ist mir schon klar, aber wenn ich, ohne selber händisch einen SQL-Befehl einzugeben, einfach den Tabellen-Inhalt anzeigen lassen möchte (Button "Anzeigen") oder auf "Suche" klicke und keine Einschränkung angebe oder bei SQL einfach ein "select * from tabelle"... In allen Fällen erhalte ich jetzt die genannte Fehlermeldung, unabhängig vom PC und nur bei dieser Tabelle.

      #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 'ANDreserve<>'X'
      LIMIT 0, 30' at line 1 
      

      Der Text in der Meldung stimmt nicht mit der gezeigten Query überein. Ist das ein Kopierfehler oder steht da wirklich kein Leerzeichen zwischen AND und reserve?

      In der Fehlermeldung steht wirklich kein Leerzeichen und Leerzeichen hatte aber auch ich immer angegeben.

      LG Marvin

      1. Ich habe es repariert bekommen....

        Bei dem Button Suche ist mir bei der Fehlermeldung das genaue SQL-Statement genannt worden:

        select * from tabelle order by feld ANDreserve<>'X'

        Ich habe bei den Optionen dann die Sortierung manuell auf irgendetwas gesetzt (z.B. Feld id aufsteigend) und das hat dann wohl irgendetwas wieder überschrieben und damit korrigiert.

        Wie auch immer die Sortierreihenfolge (und dann mit einem fehlerhaften Statement) gespeichert wurde.

        Dennoch danke für die Unterstützung.

        LG Marvin