Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi GUID für Datenbankserver ? (https://www.delphipraxis.net/121636-guid-fuer-datenbankserver.html)

shmia 1. Okt 2008 16:01

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

GUID für Datenbankserver ?
 
Unsere Kunden kopieren unsere Datenbank und arbeiten dann parallel auf zwei verschiedenen Servern weiter.
Nummerkreise und Zähler laufen dann auseinander.
Soweit ist das alles kein Problem.

Auf den generierten Reports lässt sich aber dann nicht erkennen, von welchem Server der Report generiert wurde.
Unsere Kunden werfen die Reports in einen Topf und stellen plötzlich Unstimmigkeiten in den Reports fest und melden dies als Bug.
Sie wissen manchmal selbst gar nicht, dass sie ja zwei Anlagen betreiben.
Idee: könnte man nicht eine GUID des Datenbankserver auf den Reports abdrucken, damit ich erkennen kann, dass die Reports von versch. Datenbankserver herrühren ?

Diese GUID oder andere eindeutige Kennung sollte möglichst mit SQL abgefragt werden können.

nahpets 1. Okt 2008 16:37

Re: GUID für Datenbankserver ?
 
Hallo,

schau mal in der Hilfe zu @@SERVERNAME, der Servername dürfte ja auch eindeutig sein (pro Kunde).

Andernfalls mach' die 'ne Tabelle mit einer Spalte, in die Du bei der Installation der Software eine GUID reinschreibst oder eine andere eindeutige Kennung, die für Deine Arbeit "informativ" ist, dazu eine Funktion, die eben genau die benötigten Werte aus dieser Tabelle liest und so per SQL überall eingebaut werden kann.

weitere Kandidaten könnten sein:
SQL-Code:
select DB_NAME();
select HOST_ID();
select HOST_NAME();

shmia 2. Okt 2008 10:57

Re: GUID für Datenbankserver ?
 
Danke für die Infos.
Ich habe mich jetzt entschlossen, am Rand jedes Reports den Servername.Datenbankname in Fontgrösse 5 abzudrucken.
Das ist zwar nicht 100% eindeutig, sollte aber ausreichen.

Tyrael Y. 2. Okt 2008 11:15

Re: GUID für Datenbankserver ?
 
Ich habe bei allen Datenbanken, die meine Programme nutzen eine Tabelle "BaseInfo".

Diese Tabelle hat ganz fest 3 Felder.

DB_GUID - Eine durch CreateClassID erzeugte GUID, die nur EINMAL beim Anlegen der DB erzeugt und nie wieder geändert wird.

VERSION - Version des "Datenformats", falls Tabellen sich ändern oder neue Tabellen dazu kommen, weiss ich anhand dieser Versionsnummer, welche Schritte nötig sind , damit die Datenbank auf dne neusten Stand gebracht werden kann.
Nach einem Update erhält dieses Feld eine neue Kennung.

LAST_UPDATE - Datum des letzten Updates, nur informativ für mich, wird "fast" nicht verwendet


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