Announcement

Collapse
No announcement yet.

Problem mit SQL Syntax

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Problem mit SQL Syntax

    Hallo Zusammen,

    Habe folgendes Syntax Problem:

    SELECT Feld01 AS Bez01 FROM Table01 -> funktioniert
    SELECT FALSE AS Bez01 FROM Table02 -> funktioniert auch

    SELECT Feld01 AS Bez01 FROM Table01
    UNION
    SELECT FALSE AS Bez01 FROM Table02 -> funktioniert nicht.

    Details:
    Access-Datenbank über ADO
    Beim Ausführen der UNION Abfrage enthält das Feld
    Bez01 für alle Datensätze den Wert -1.

    Folgende Versionen hab ich auch schon probiert:
    UNION
    SELECT 'FALSE' AS Bez01 FROM Table02
    UNION
    SELECT 0 AS Bez01 FROM Table02

    Bemerkung: Mit Paradox-Datenbank funktioniert alles bestens!

    Kennt jemand die Lösung ?

    Schon mal besten Dank

    Markus

  • #2
    Hallo Markus,

    also nach meinem Verständnis müssen bei einem UNION die jeweils korrespondierenden Felder den gleichen Typ haben!

    Gruß Fal
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment


    • #3
      Hallo Falk,
      das ist natürlich richtig. Ich hab vergessen zu sagen, dass das Feld01 vom Typ Bool ist

      Comment


      • #4
        Wie Falk sagt : Voraussetzung ist gleicher Typ, besser gesagt identische ! Allerdings, was hat "Feld01" mit einem Feld "FALSE" zu tun ? Paradox als Referenz zu nehmen ist auch eher ungeeignet

        Comment


        • #5
          Hallo Markus,

          welche Fehlermeldung erhälst du denn? Hast du es mal mit einer expliziten Typumwandlung in beiden Teilabfragen probiert, so daß der Feldtyp "garantiert identisch" ist?

          Gruß Fal
          Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

          Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

          Comment


          • #6
            Ich kenne jetzt Access nicht im Detail, aber ich denke, dass -1 nicht als FALSE interpretiert werden kann (Wertebereich 0..1). Ansonsten:
            <pre>
            SELECT cast(Feld01 as SQL_BIT) AS Bez01 FROM Table01
            </pre>
            sollte gehen

            Comment

            Working...
            X