AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi View Referenzen anzeigen / suchen
Thema durchsuchen
Ansicht
Themen-Optionen

View Referenzen anzeigen / suchen

Ein Thema von haentschman · begonnen am 17. Mär 2022 · letzter Beitrag vom 6. Apr 2022
Antwort Antwort
Redeemer
Online

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.136 Beiträge
 
Delphi 2009 Professional
 
#1

AW: View Referenzen anzeigen / suchen

  Alt 6. Apr 2022, 10:23
Also ich hab das Problem mit 2019.
Auf die Idee, einfach alle Views einer Datenbank zu Öffnen und zu Speichern und das zu automatisieren, bin ich noch nicht gekommen.
Vermutlich kann man es wohl einfach so machen:
Code:
SELECT MODS.DEFINITION FROM SYS.OBJECTS OBJ
JOIN SYS.SQL_MODULES MODS ON OBJ.[OBJECT_ID]=MODS.[OBJECT_ID]
/* JOIN SYS.SCHEMAS SCHS ON OBJ.SCHEMA_ID=SCHS.SCHEMA_ID */ -- nur nötig, sollte man nach Schema filtern wollen: SCHS[.NAME]='dbo'
WHERE OBJ.TYPE='V'
AND MODS.DEFINITION IS NOT NULL /* rausfiltern, wo das Recht SHOW VIEW fehlt */
Dann ersetzt man in jedem Ergebnis das erste CREATE , was kein Kommentar ist, durch ALTER und führt das Ergebnis als Befehl aus. Oder sehe ich da was falsch?

Den Originalquelltext des Views kann man – manchmal – in Heidi angucken. Wenn Heidi denn funktioniert.
Lag an meinen Rechten.
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#2

AW: View Referenzen anzeigen / suchen

  Alt 6. Apr 2022, 17:15
Bei Oracle war/ist es eigentlich auch so. Wenn man das DM ändert (natürlich auch views), gehen abhängige Objekte u.U. "kaputt" (invalid). Aber es läuft gleichzeitig ein Mechanismus, der sie wieder heilt, spätestens wenn man in aufruft oder wenn man die Objekte (die kaputt sind) explizit "recompiled". Funktioniert eigentlich fast geräuschlos, außer bei komplexeren Modellen.
Für Views habe ich mir deshalb angewöhnt, die Sourcen in einer einzigen Quelldatei zu verwalten, die man notfalls immer durchjagen kann. Ist nur bei Selbstreferenzen manchmal nicht erfolgreich. Dann am besten einzelne Objekte recompilieren.

Das ist am Ende ziemlich ähnlich zu dem Ansatz, den Du mit Deinem SQL Statement zu Fuß machst.
Gruß, Jo
  Mit Zitat antworten Zitat
Antwort Antwort


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:08 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