Einzelnen Beitrag anzeigen

alex517

Registriert seit: 23. Nov 2004
Ort: Bernau b. Berlin
273 Beiträge
 
Delphi XE5 Enterprise
 
#28

Re: Allgemeines Datenbankproblem bei SQL Abfrage

  Alt 9. Apr 2009, 08:38
Hallo Jens,

- Bevor du etwas anders macht, leg einen neuen Firebird-User an und erstelle deine Datenbank
mit diesem neuen User als Owner. Also weg von SYSDBA/masterkey.
Das wird dir Probleme beim Kunden ersparen. Und der nachträgliche Umstieg ist nicht ganz trivial.

Zitat:
Wenn ich es verstanden habe, bedeutet das, über die im Beispiel erstellte Routine, wird durch die Firebird, automatisch die Zeit und der Benutzername in die jeweilige Tabelle eingetrage. Das heißt, das sind aber dann die Benutzer die gerade an der Datenbank angemeldet sind. Das heißt, da ich momentan noch mit den Standartwerten SYSDBA/masterkey arbeite, würde immer dieser eingetragen. Was dann bedeuten würde, das ich jedem Programmnutzer, auch einen Datenbankzugang einrichten müsste, der dann eingetragen werden könnte.
Du kannst beim Connect deines Programm zur Datenbank deine selbst verwalteten Benutzernamen
in einer "Context Variable" hinterlegen. Wenn du das im Context der Session machst,
steht diese Variablen solange zur Verfügung wie die Connection besteht.
Diese Variable kannst du dann im Trigger abfragen und in das entsprechende Datenfeld eintragen.
Damit muss nicht jeder Benutzer einen eigenen Datenbankzugang haben.
Siehe auch hier.

- Für die ID solltest du so wie für alle anderen Felder eine Domäne anlegen,
die außerdem Not NULL sein sollte.

- Je nach gewünschter Auswertung wirst du später noch Indizes anlegen müssen um die
Abfragen entsprechend performant zu gestallten.

alex
Alexander
  Mit Zitat antworten Zitat