Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Result eines SQL-Statements hat in SSMS 14 Spalten, in FDQuery nur 11 (https://www.delphipraxis.net/213391-result-eines-sql-statements-hat-ssms-14-spalten-fdquery-nur-11-a.html)

juergen 21. Jul 2023 21:27

Datenbank: MSSQL • Version: 2019 • Zugriff über: FireDAC

Result eines SQL-Statements hat in SSMS 14 Spalten, in FDQuery nur 11
 
Hallo zusammen,

ich habe hier ein seltsames Phänomen.
Über ein kleines Delphi Programm von mir frage ich eine fremde MSSQL (2019) Datenbank ab.
Das SQL-Statement gibt im SSMS 14 Spalten aus. Das selbe SQL-Statement in meiner FDQuery erzeugt dort nur 11 Spalten!
Code:
FD_Qry.FieldCount = 11
Ich habe festgestellt, es fehlen alle Spalten die in der Tabelle als VARCHAR deklariert sind... :gruebel::gruebel::gruebel:
Jetzt habe ich im SQL-Statement das mit Convert probiert
Code:
CONVERT(VARCHAR(MAX), <Spalte_als_VarChar>)
.
Aber das hilft auch nicht.
Die FDQuery habe ich mal vorsichtshalber neu auf die Form geklascht. Sie hat also die Default-Einstellungen.
Im Debugger gibt es keinerlei Meldungen dazu.

Hat jemand sowas schon gehabt oder einen Ansatz wonach ich suchen kann?

Vielen Dank schon mal vorab.

Uwe Raabe 21. Jul 2023 21:42

AW: Result eines SQL-Statements hat in SSMS 14 Spalten, in FDQuery nur 11
 
Könntest du die SQL-Struktur Definition hier posten? Also
Delphi-Quellcode:
CREATE TABLE...
?

juergen 21. Jul 2023 21:48

AW: Result eines SQL-Statements hat in SSMS 14 Spalten, in FDQuery nur 11
 
---Tabellendefinition im Nachgang gelöscht---


Z.B. die Spalte "Bezeichnun" wird in der FDQuery nicht erzeugt.

Uwe Raabe 21. Jul 2023 22:10

AW: Result eines SQL-Statements hat in SSMS 14 Spalten, in FDQuery nur 11
 
Klappt hier wunderbar.

Delphi 11.3 Patch 1
Connection und Query mit Standardwerten

juergen 21. Jul 2023 22:40

AW: Result eines SQL-Statements hat in SSMS 14 Spalten, in FDQuery nur 11
 
Vielen Dank Uwe für deine Mühen! :dp:
Durch deinen Einsatz konnte ich in andere Richtungen recherchieren und wurde fündig.

Ich hatte als Alias z.B. folgendes hinterlegt:
Code:
SELECT
   F.NUMMER "AUFTRAGSNUMMER"   --1
   ,F.XPLINIE "VERKNÜPFUNGSFELD!"   --2
   ,SL.STUECKARTI   --3
Man achte auf das Ausrufezeichen! Nachdem ich die ganzen Sonderzeichen in meinen Alias' entfernt hatte, funktioniert nun auch die FDFQuery!
Das SSMS hat damit anscheinend kein Problem.

Uwe Raabe 21. Jul 2023 23:13

AW: Result eines SQL-Statements hat in SSMS 14 Spalten, in FDQuery nur 11
 
Das Ausrufezeichen wird von FireDAC in der Tat als Steuerzeichen (hier für eine Substitution Variable) interpretiert:
Zitat:

A substitution variable starts with the ‘!’ or ‘&’ symbol and is followed by the macro variable name.
Das kannst du aber abschalten mit den ResourceOptions: MacroCreate und MacroExpand.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:23 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-2025 by Thomas Breitkreuz