WHERE mit AND

WHERE mit AND

am 30.03.2008 00:21:59 von martin_p

Hallo,

ich habe eine kleine kurze Frage.
Und zwar habe ich folgendes SQL Delete:

DELETE FROM 'logs' WHERE (id > '368') AND (id < '1102');

SQL sagt mir aber, dass der Syntax falsch ist:
#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 ''logs' WHERE (id > '368') AND (id < '1102')' at line 1


Allerdings kann ich keinen Fehler entdecken. Wie mache ich es richtig
bzw. wo liegt der Fehler?


Bye,
Martin

--
Error: No keyboard detected, press F1 to continue

Re: WHERE mit AND

am 30.03.2008 00:36:26 von hellbringer

Martin Pöpping schrieb:
> DELETE FROM 'logs' WHERE (id > '368') AND (id < '1102');

DELETE FROM `logs` WHERE id > 368 AND id < 1102;

Re: WHERE mit AND

am 30.03.2008 00:46:27 von martin_p

hellbringer schrieb:

>> DELETE FROM 'logs' WHERE (id > '368') AND (id < '1102');
>
> DELETE FROM `logs` WHERE id > 368 AND id < 1102;

Nein, geht auch nicht:

Fehler

SQL-Befehl:

DELETE FROM 'logs' WHERE id >368 AND id <1102

MySQL meldet: Dokumentation
#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 ''logs' WHERE id >368 AND id <1102' at line 1


Es handelt sich um die MySQL Server Version: 4.1.22

Hat noch jemand irgendwelche anderen Ideen?



Bye,
Martin

--
Error: No keyboard detected, press F1 to continue

Re: WHERE mit AND

am 30.03.2008 11:41:45 von Claus Reibenstein

Martin Pöpping schrieb:

> hellbringer schrieb:
¯¯¯¯¯¯¯¯¯¯¯

Deshalb sehe ich seine Postings nicht ...

>> DELETE FROM `logs` WHERE id > 368 AND id < 1102;
^ ^

> DELETE FROM 'logs' WHERE id >368 AND id <1102
^ ^

Du siehst den Unterschied?

> #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 ''logs' WHERE id >368 AND id <1102' at line 1

Das, was unmittelbar hinter "near" steht, ist immer genau die Stelle, an
der der SQL-Interpreter ins Stolpern gekommen ist. In Deinem Fall ist es
das ungültige Hochkomma.

Gruß. Claus

Re: WHERE mit AND

am 02.04.2008 14:39:20 von Dominik Echterbruch

Claus Reibenstein wrote:
>
>> #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 ''logs' WHERE id >368 AND id <1102' at line 1
>
> Das, was unmittelbar hinter "near" steht, ist immer genau die Stelle, an
> der der SQL-Interpreter ins Stolpern gekommen ist.

Leider ist es das nicht _immer_genau_. Bei Triggern ist der Fehler auch
gerne mal ein paar Zeilen *vor* dem, was hinter "near" steht. Leidvolle
Erfahrung...

Grüße,
Dominik
--
Wo kämen wir denn da hin, wenn jeder nur fragte "Wo kämen wir denn
da hin?", aber niemand ginge, um zu sehen, wohin wir kämen, wenn wir
gingen?
(Autor unbekannt)

Re: WHERE mit AND

am 02.04.2008 20:42:31 von Claus Reibenstein

Dominik Echterbruch schrieb:

> Claus Reibenstein wrote:
>
>> Das, was unmittelbar hinter "near" steht, ist immer genau die Stelle, an
>> der der SQL-Interpreter ins Stolpern gekommen ist.
>
> Leider ist es das nicht _immer_genau_.

Doch.

> Bei Triggern ist der Fehler auch
> gerne mal ein paar Zeilen *vor* dem, was hinter "near" steht. Leidvolle
> Erfahrung...

Der Interpreter kann nur syntaktische Fehler erkennen und anzeigen. Bis
zur monierten Stelle war die Syntax in Ordnung.

Dass der _eigentliche_ Fehler irgendwo davor liegen kann, ist richtig,
ändert daran aber nichts.

Im vorliegenden Fall stimmen erkannter und tatsächlicher Fehler sogar
überein, und das ist erfahrungsgemäß der Normalfall.

Gruß. Claus