AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi SQL-Fehler bei MSSQL
Thema durchsuchen
Ansicht
Themen-Optionen

SQL-Fehler bei MSSQL

Ein Thema von alcaeus · begonnen am 8. Feb 2005 · letzter Beitrag vom 9. Feb 2005
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#1

SQL-Fehler bei MSSQL

  Alt 8. Feb 2005, 08:13
Datenbank: MSSQL • Zugriff über: .
Hallo allerseits,

ich bekomme bei folgender Abfrage immer den Fehler "Incorrect Syntax near 'A'", und zwar in Zeile 2, egal ob ich das Statement in meinem Programm oder im DB-Explorer aufrufe.

SQL-Code:
SELECT N.TEXT,A.AUTHORIZEDGROUPS FROM PAYMENTTERMS A,NLSUSER N WHERE A.MANDANTID=0
AND ((A.AUTHORIZEDGROUPS IS NULL) OR (0=0) OR (';0;IN A.AUTHORIZEDGROUPS))
AND N.LANGUAGEID=0
AND N.TOPICID=18
AND N.FIELDID=A.NLSFIELDID
Fragt nicht, was das 0=0 da soll, das ist einfach nur so weil das Statement halt vom Programm so zusammengestellt wird, manchmal steht da auch 1=0 oder so...

Das Statement funktioniert perfekt auf Oracle, perfekt auf SQLBase, und überhaupt nicht auf MSSQL.
Ich finde da einfach keinen Fehler

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#2

Re: SQL-Fehler bei MSSQL

  Alt 8. Feb 2005, 08:20
Hai alcaeus,

hast Du einmal versucht deine ganzen WHERE-Bedingungen in Klammern zu setzen

SQL-Code:
SELECT N.TEXT,A.AUTHORIZEDGROUPS FROM PAYMENTTERMS A,NLSUSER N
WHERE (A.MANDANTID=0)
AND ((A.AUTHORIZEDGROUPS IS NULL) OR (0=0) OR (';0;IN A.AUTHORIZEDGROUPS))
AND (N.LANGUAGEID=0)
AND (N.TOPICID=18)
AND (N.FIELDID=A.NLSFIELDID)
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#3

Re: SQL-Fehler bei MSSQL

  Alt 8. Feb 2005, 08:22
Hallo Sharky,

ja, hab ich schon, leider hat das nichts gebracht. Der Fehler kommt immer noch.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von Leuselator
Leuselator

Registriert seit: 18. Mär 2003
Ort: Berlin
589 Beiträge
 
Delphi 8 Architect
 
#4

Re: SQL-Fehler bei MSSQL

  Alt 8. Feb 2005, 08:23
Zeile 2 kannst Du auch weglassen, da der Ausdruck aufgrund von "(0=0) immer True zurückliefert...
Gruß
Tim Leuschner
Programmierer = moderner Sysiphos: stets wenn er meint, den Stein seiner Dummheit auf den Berg des Wissens gewuchtet zu haben, erblickt er einen völlig neuen Aspekt und der Dummfels poltert mit Getöse zurück ins Tal der Unwissenheit...
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#5

Re: SQL-Fehler bei MSSQL

  Alt 8. Feb 2005, 08:24
Zitat von alcaeus:
Fragt nicht, was das 0=0 da soll, das ist einfach nur so weil das Statement halt vom Programm so zusammengestellt wird, manchmal steht da auch 1=0 oder so...
Nein, das ist eine Bedingung die vom Programm aus gefüllt wird.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#6

Re: SQL-Fehler bei MSSQL

  Alt 8. Feb 2005, 08:25
Hmmm.... ausser das Du einem Feld den Namen Text gegeben hast fällt mir so nichts auf
Hast Du mal den SQL-Code zum erzeugen der beiden Tabellen?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Leuselator
Leuselator

Registriert seit: 18. Mär 2003
Ort: Berlin
589 Beiträge
 
Delphi 8 Architect
 
#7

Re: SQL-Fehler bei MSSQL

  Alt 8. Feb 2005, 08:29
Hatte nicht zu ende gelesen (0=0)
Versuch mal die Feld- und Tabellenbezeichnungen in eckige Klammern zu setzen "[" und "]"
Tim Leuschner
Programmierer = moderner Sysiphos: stets wenn er meint, den Stein seiner Dummheit auf den Berg des Wissens gewuchtet zu haben, erblickt er einen völlig neuen Aspekt und der Dummfels poltert mit Getöse zurück ins Tal der Unwissenheit...
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#8

Re: SQL-Fehler bei MSSQL

  Alt 8. Feb 2005, 08:38
Hallo allerseits,

ich habe herausgefunden dass dieses Statement den Fehler hervorruft: (';0;IN A.AUTHORIZEDGROUPS) Geht das bei MSSQL nicht?

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von Leuselator
Leuselator

Registriert seit: 18. Mär 2003
Ort: Berlin
589 Beiträge
 
Delphi 8 Architect
 
#9

Re: SQL-Fehler bei MSSQL

  Alt 8. Feb 2005, 08:46
versuchs mal mit:
(PATINDEX('%;0;%',A.AUTHORIZEDGROUPS) > 0)
Tim Leuschner
Programmierer = moderner Sysiphos: stets wenn er meint, den Stein seiner Dummheit auf den Berg des Wissens gewuchtet zu haben, erblickt er einen völlig neuen Aspekt und der Dummfels poltert mit Getöse zurück ins Tal der Unwissenheit...
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#10

Re: SQL-Fehler bei MSSQL

  Alt 8. Feb 2005, 14:14
Hallo allerseits,

sorry fuer die Verspaetung, aber die HDSL-Linie im Betrieb war down
In gibt es bei MSSQL nicht, man muss den Umweg ueber CharIndex nehmen.
Danke fuer eure Hilfe.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz