AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken [FMX ANDROID UNIDAC] Exception der Klasse EFailOver mit der Meldung '' aufgetreten

[FMX ANDROID UNIDAC] Exception der Klasse EFailOver mit der Meldung '' aufgetreten

Ein Thema von Devil1925 · begonnen am 7. Jun 2017 · letzter Beitrag vom 8. Jun 2017
Antwort Antwort
Benutzerbild von Devil1925
Devil1925

Registriert seit: 20. Nov 2015
Ort: Saerbeck
236 Beiträge
 
Delphi 10.3 Rio
 
#1

[FMX ANDROID UNIDAC] Exception der Klasse EFailOver mit der Meldung '' aufgetreten

  Alt 7. Jun 2017, 14:21
Datenbank: MSSQL • Version: 2012 • Zugriff über: UNIDAC
Moin, ich erhalte oben genannten Fehler beim Versuch eine Query zu öffnen. Das SQL in der Query sieht folgendermaßen aus:

SQL-Code:
Select Count(*) as Anz from (Select Nr, Kopf_Idx, Pos, Artikel_Nr_Str, Bezeichnung1, Bezeichnung2, Anzahl, Menge, GewPos, VK, GVK, Changed_Last, Creation_Date from
Bele_Sub where (Kopf_IDX in (Select IDX from Beleg where (Typ = 'Uand Datum > DATEADD(month, -6, GETDATE()) and
(Kunden_Nr in (Select Kunden_Nr from Kundenst where 1=1 AND Sortierfeld like :Sortierfeld +'%AND :Name = :Name AND :PLZVON = :PLZVON AND :PLZBIS = :PLZBIS AND :Ort = :Ort
AND (isnull(inaktiv, 0) = 0) AND (isnull(Sperrkennzeichen,'N') = 'N')) or Kunden_Nr2 in (Select Kunden_Nr from Kundenst where 1=1 AND Sortierfeld like :Sortierfeld +'%AND :Name = :Name AND :PLZVON = :PLZVON
AND :PLZBIS = :PLZBIS AND :Ort = :Ort AND (isnull(inaktiv, 0) = 0) AND (isnull(Sperrkennzeichen,'N') = 'N'))))) ) or
(Kopf_IDX in (Select IDX from Beleg where (Typ = 'Uand Datum > DATEADD(month, -6, GETDATE()) and (Kunden_Nr in ('') or Kunden_Nr2 in ('')))))) T
die Parameter erstetze ich mit z.B.   Query.ParamByName('Sortierfeld').AsString := 'Test'; . Wenn ich die Query nun mit Query.Open öffnen will, so erhalte ich beim Debuggen die Meldung
Code:
Es ist eine Exception der Klasse EFailOver mit der Meldung '' aufgetreten.
. Wenn ich nun auf Fortsetzen klicke erscheint diese Meldung erneut. Compiliere ich die App im Release, so wird diese Meldung nicht angezeigt und die App hängt in einer Endlosschleife. (Gerade Testweise mal laufen gelassen, und es geht seit ca 20 minuten so.

Das SQL kommt auch beim SQL Server an. Hier habe ich mal den SQL Server Profiler angeworfen.


Weiss hier jemand Rat?

[EDIT]
eine Weitere Erkenntnis ist, dass dieser Fehler nur auf dieser Einen Datenbank auftritt. ich habe das jetzt noch auf einer 2008 MSSQL Datenbank und einer 2014 MSSQL Datenbank ausprobiert. Hier funktioniert alles Super. Auch wird diese Query schon vorher auf der Datenbank mit anderen Parametern und anderem SQL geöffnet und geschlossen.
[/EDIT]
Angehängte Grafiken
Dateityp: jpg SQL Server Profiler.jpg (254,6 KB, 51x aufgerufen)
Philipp
Höllische Grüße
Devil
Meistens sitzt das Problem vor dem Bildschirm! - Leider bin das oftmals ich.

Geändert von Devil1925 ( 7. Jun 2017 um 15:22 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.428 Beiträge
 
Delphi 12 Athens
 
#2

AW: [FMX ANDROID UNIDAC] Exception der Klasse EFailOver mit der Meldung '' aufgetrete

  Alt 7. Jun 2017, 15:07
Hallöle...
Kann das sein das das SQL nicht komplett in diesen Beitrag kopiert wurde?
  Mit Zitat antworten Zitat
Benutzerbild von Devil1925
Devil1925

Registriert seit: 20. Nov 2015
Ort: Saerbeck
236 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: [FMX ANDROID UNIDAC] Exception der Klasse EFailOver mit der Meldung '' aufgetrete

  Alt 7. Jun 2017, 15:24
Wie kommst du darauf? (ich habe nur vergessen zwei doppelte hochkommas zu entfernen, die habe ich jetzt gerade noch korrigiert) das ist das SQL
Philipp
Höllische Grüße
Devil
Meistens sitzt das Problem vor dem Bildschirm! - Leider bin das oftmals ich.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.428 Beiträge
 
Delphi 12 Athens
 
#4

AW: [FMX ANDROID UNIDAC] Exception der Klasse EFailOver mit der Meldung '' aufgetrete

  Alt 7. Jun 2017, 15:32
Zitat:
GETDATE()) and (Kunden_Nr in ('') or Kunden_Nr2 in ('')))))) T
T ... und dann was?
  Mit Zitat antworten Zitat
Benutzerbild von Devil1925
Devil1925

Registriert seit: 20. Nov 2015
Ort: Saerbeck
236 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: [FMX ANDROID UNIDAC] Exception der Klasse EFailOver mit der Meldung '' aufgetrete

  Alt 7. Jun 2017, 15:41
man braucht bei MSSQL einen Alias für ein Subselect wenn man aus diesem Selektiert.

Nehmen wir mal 2 simple Select-Statements:

 Select * from (Select Kunden_Nr, Name from Kundenst)
 Select * from (Select Kunden_Nr, Name from Kundenst) T
in diesem Fall wird das erste SQL Statement nicht funktionieren, da hier kein Alias für  (Select Kunden_Nr, Name from Kundenst) vergeben wurde.
Das zweite SQL hingegen funktioniert mit diesem Alias. Es kann natürlich auch als Alias "A" oder "B" oder auch "Hustensaft" vergeben werden.
Philipp
Höllische Grüße
Devil
Meistens sitzt das Problem vor dem Bildschirm! - Leider bin das oftmals ich.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.428 Beiträge
 
Delphi 12 Athens
 
#6

AW: [FMX ANDROID UNIDAC] Exception der Klasse EFailOver mit der Meldung '' aufgetrete

  Alt 7. Jun 2017, 17:50
ok.
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 22:33 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