ich in der SQL auf eine Versionsnummer benötigen StoredProcedures und Funktionen zu wissen, welche Version verwendet jetzt und notwendig, dass oder nicht zu aktualisieren?hinzufügen oder liest Versionsnummer des SQL StoredProcedures oder Funktionen
Nach der Suche im Internet habe ich die Tabelle sys.objects
aus der master-Datenbank gefunden.
sys.objects
können SQL-Elemente Informationen wie dieser Code sein holen:
SELECT *
FROM sys.objects
WHERE TYPE = 'P' -- StoredProcedures
OR TYPE = 'FN' -- Functions
OR TYPE = 'U' -- Usert Tabels
Ergebnis:
╔══════╦═══════════╦═══════════╦══════╦═══════════╦═════════════╦═════════════╦═════╗
║ name ║ object_id ║ schema_id ║ type ║ type_desc ║ create_date ║ modify_date ║ ... ║
╚══════╩═══════════╩═══════════╩══════╩═══════════╩═════════════╩═════════════╩═════╝
Aber noch konnte ich nicht ein Feld mit dem Namen Version oder MetaDaten für SQL finden gespeichert Prozeduren oder Funktionen, um etwas wie Version darin zu speichern!
Meine Fragen sind:
Wie wissen, welche Versionsnummer von StoresProcedures oder Funktionen im Einsatz ist?
Und wenn existieren diese Eigenschaft, wie man es ändert?
Oder wenn es nicht existiert (Version
Feld), kann ich dann sys.objects
Daten programmgesteuert ändern? weil ich versuche, diesen Fehler, dass und gesehen zu ändern:
Msg 259, Level 16, State 1, Line 1
Ad hoc updates to system catalogs are not allowed.
Hey, warum ist die Versionsnummer der Prozedur oder Funktion wichtig? –
Ich habe viele Client von einigen Servern, wenn ich ein SP oder FN-Codes so geschrieben, dass 'drop' und' create' Skripte in aktualisieren.NET-Codes und wenn ein Client durch ein neues Skript läuft, überprüfen Sie zuerst die SP-Version auf dem Server, um zu wissen, ob SPs aktualisiert werden müssen oder nicht! und etc ... – Behzad
Nur um zu verdeutlichen - Sie haben 1 Code-Basis und viele Datenbanken, die die gleichen sind (nur mit unterschiedlichen Daten)? –