Autor Beitrag
m-werk
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 51



BeitragVerfasst: Mi 03.07.02 22:12 
Hallo Leute, ich habe noch 3 Fragen:

1. Ich habe ein Verzeichnis in der Registry stehen (wird mit setup erstellt), und möchte nun, dass von der connectionString dieser Ordner hergenommen wird, wie er in der Registry steht, damit die Datenbank funktioniert.

2. Ich habe in meiner Access-DB als Primärschlüssel und auch als AutoWert den Namen KundenNr. Nun ist es doch so, dass wenn ein Datensatz gelöscht wird, die vortlaufende nummer aber bestehen bleibt. Kann man das auch löschen? wenn ja, wie?

3. Welche Systemdaten brauche ich noch für mein Setupprogramm für die Access-DB. Verknüpft ist diese mit Microsoft Jet OLEDB 4.0

Könnt ihr mir noch bei diesen 3 Fragen helfen?

_________________
Grüße, m-werk
BlackOrpheus
Hält's aus hier
Beiträge: 9



BeitragVerfasst: Do 04.07.02 12:14 
Moin!

zu 1.
Ich würde im OnCreate des Formulars mit der ADO Connection den Wert wie folgt auslesen und dann zuweisen.

Beispiel aus der Delphi Hilfe:
"Im folgenden Beispiel wird ein Wert aus einem Registrierungseintrag abgerufen.
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
uses Registry; 
function GetRegistryValue: string;

var
  Registry: TRegistry;
  S: string;
begin
  Registry:=TRegistry.Create;

  Registry.RootKey:=HKEY_LOCAL_MACHINE;
  {False, weil der Eintrag nicht erstellt werden soll, }
  {wenn er nicht vorhanden ist }
  Registry.OpenKey('MYKEY',False); 
  Result :=Registry.ReadString('VALUE1');

  Registry.Free;
end;"

zu 2.
es sollte eigentlich nicht ohne weiteres möglich sein (ich hab noch nicht mit Access gearbeitet) da das Feld auch noch ein PrimaryKey ist würden durch eine änderung des AutoIncWert evtl Referenzen zu anderen datensätzen verloren gehen.

zu 3.
keine Ahnung. Sorry!

Code-Tags hinzugefügt. Tino
Renegade
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 358

Win XP Pro, Win 7 Beta
BDS 2006
BeitragVerfasst: Fr 05.07.02 09:17 
zu 2.

Du solltes unbedingt ein neues Feld für den PrimaryKey (als AutoWert) erstellen (z.B. lfdNr, JundenID oder so). Dieser kann dann eigenständig von der Datenbank gehändelt und für Verknüpfungen / Beziehungen verwendet werde. Für Deine Kunden-Nummer solltest Du einfach ein Integer-Feld benutzen. Dann hast Du 100% einfluss darauf.

Zum Thema Indizes:
Access-DB sind dafür bekannt, daß sie sich im laufe der Zeit extrem "aufblähen". Du solltes Dich also zum Thema Reorganisation schlau machen.

Hoffe das hilft Dir weiter.
m-werk Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 51



BeitragVerfasst: Fr 05.07.02 09:36 
Hi, das mit der ID ist mir schon klar, aber die ID, oder lfd, laufendeNR, die möchte ich auch gelöscht aben!

_________________
Grüße, m-werk
Renegade
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 358

Win XP Pro, Win 7 Beta
BDS 2006
BeitragVerfasst: Do 11.07.02 16:43 
Also wenn Du den Datensatz löscht, dann verschwindet auch der Indexwert. :)
Wenn Du meinst, daß der Index nicht mehr fortlaufend ist (1,2,6,7..) und Du dieses korrigieren möchtest, dann weiß ich dafür keine Möglichkeit. :cry: Der Index soll ja eindeutig sein.

Hoffe das hilft Dir weiter - ansonsten weiter posten

_________________
Sokrates (468 v.Chr. - 399 v.Chr.)
"Es ist keine Schande, nichts zu wissen, wohl aber, nichts lernen zu wollen."