Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Tabellen aus View auslesen (https://www.delphipraxis.net/149778-tabellen-aus-view-auslesen.html)

DerAndereMicha 30. Mär 2010 08:25

Datenbank: MS SQL-Server • Version: 2005/2008 • Zugriff über: ADO

Tabellen aus View auslesen
 
Hallo Zusammen,

ich möchte in Delphi herausbekommen auf welche Tabellen eine View auf einem SQL-Server zugreift. Diese View hat immer den selben Namen, nur deren Inhalt ist halt unterschiedlich.

Ich habe es bisher mit

Delphi-Quellcode:
ADOConnection.OpenSchema(siViewTableUsage, VarArrayOf([Null, Null, 'ViewName']), Emptyparam, ADODataSet);
versucht, aber leider kommt da die Exception "Das Objekt oder der Provider kann den angeforderten Vorgang nicht ausführen.". Ist mein Aufruf falsch (ich habe leider keinerlei Informationen zu OpenSchema im Bezug auf das Attribut "siViewTableUsage" gefunden) oder ist das mit dem ADO SQL-Server-Provider schlicht überhaupt nicht möglich?

Hat evtl. jemand eine andere Idee, um an die Tabellen aus einer View heranzukommen, ohne die zu Grunde liegende SQL-Anweisung parsen zu müssen?

Gruß
Micha

spaxxn 30. Mär 2010 08:37

Re: Tabellen aus View auslesen
 
Zitat:

Zitat von DerAndereMicha
Hat evtl. jemand eine andere Idee, um an die Tabellen aus einer View heranzukommen, ohne die zu Grunde liegende SQL-Anweisung parsen zu müssen?

Views werden bei Abfragen wie Tabellen behandelt. Das es ein View ist, ist nur für den SQL-Server von Relevanz.

DerAndereMicha 30. Mär 2010 08:44

Re: Tabellen aus View auslesen
 
Das hilft mir leider nicht und das war auch nicht meine Frage.

Ich möchte herausfinden, welche Tabellen von einer View verwendet werden.

Gruß
Micha

DerAndereMicha 30. Mär 2010 09:37

Re: Tabellen aus View auslesen
 
Hab es inzwischen selbst rausbekommen. Es geht mit SQL-Mitteln:

SQL-Code:
SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.VIEW_TABLE_USAGE
WHERE VIEW_NAME LIKE 'VIEWNAME'
Nur eigentlich sollte das selbe auch der ADO-Provider bei OpenSchema(siViewTableUsage, ... ) machen :-(

Gruß
Micha


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:12 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