AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [MSSQL] Problem bei Konvertierung in Case-Verzweigung
Thema durchsuchen
Ansicht
Themen-Optionen

[MSSQL] Problem bei Konvertierung in Case-Verzweigung

Ein Thema von Evian · begonnen am 7. Apr 2008 · letzter Beitrag vom 8. Apr 2008
 
Benutzerbild von Evian
Evian

Registriert seit: 10. Apr 2003
Ort: Berlin
485 Beiträge
 
Delphi 6 Professional
 
#1

[MSSQL] Problem bei Konvertierung in Case-Verzweigung

  Alt 7. Apr 2008, 17:34
hallo Zussamen,

ich sitze gerade an einer etwas größeren SQL-Abfrage, in der es unter anderem ein paar Spalten gibt, bei denen zur gleichen Zeit immer nur eine einen "richtigen" Wert haben kann (die anderen sind Null). Nun möchte ich die Abfrage so gestallten, dass praktisch nur noch eine Spalte gibt, also dass ich sie z.B. durch Case-Verzewigungen zusammenführe.

SQL-Code:
Nummer = CASE WHEN dbo.tEingangsrechnung.Eingangsrechnungsnummer IS NOT NULL
                      THEN dbo.tEingangsrechnung.Eingangsrechnungsnummer ELSE CASE WHEN dbo.tKassenbuchung.Belegnummer IS NOT NULL
                      THEN dbo.tKassenbuchung.Belegnummer ELSE CASE WHEN tEingangsrechnung_1.Eingangsrechnungsnummer IS NOT NULL
                      THEN tEingangsrechnung_1.Eingangsrechnungsnummer ELSE CASE WHEN dbo.tAusgangsrechnung.Ausgangsrechnungsnummer IS NOT NULL
                      THEN dbo.tAusgangsrechnung.Ausgangsrechnungsnummer ELSE CASE WHEN dbo.tDauerauftrag.Dauerauftragsnummer IS NOT NULL
                      THEN dbo.tDauerauftrag.Dauerauftragsnummer ELSE CASE WHEN dbo.tSonstigeZahlungenEinnahmen.SZENummer IS NOT NULL
                      THEN dbo.tSonstigeZahlungenEinnahmen.SZENummer ELSE CASE WHEN dbo.tSonstigeZahlungenAusgaben.SZANummer IS NOT NULL
                      THEN dbo.tSonstigeZahlungenAusgaben.SZANummer ELSE NULL END END END END END END END
Der Syntax der Abfrage ist soweit in Ordnung (zumindest meckert der SQL Query Analyzer nicht rum), nur versucht der SQL-Server aus irgend einem Grund das Ergebniss der Verzeigung in eine Variabel vom Typ in zu pressen.

Zitat:
Server: Nachr.-Nr. 245, Schweregrad 16, Status 1, Zeile 1
Syntaxfehler beim Konvertieren des nvarchar-Wertes 'SZA000759' in eine Spalte vom Datentyp int.
meine Frage wäre nun, ob jemand weiß, wie ich angeben kann, dass 'Nummer' vom Typ nvarChar sein soll? Außerdem würde ich gern wissen, ob es für mein Problem noch eine elegantere Lösung gibt, als diese verschachtelten CASE-Verzeigungen.

Vielen Dank und freundliche Grüße,

Phill
-> www.Phillsoft.de

Ich bin nun Mathematiker, aber meine Freundin bleibt trotzdem unberechenbar!
  Mit Zitat antworten Zitat
 


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 14:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz