![]() |
Autoinc Feld im Clientdataset auf 1 setzen
Hallo Habe eine Datenbank mit nem ID Autoinc feld. nun soll es während der laufzeit auf 1 gesetz werden.
Wie mache ich das am besten? |
AW: Autoinc Feld im Clientdataset auf 1 setzen
Also ich leere meine Datenbank so
Delphi-Quellcode:
Nun will ich <PARAMS AUTOINCVALUE="6"/> auf 1 statt auf 6 setzen
clientdataset1.First;
while not clientdataset1.EOF do begin clientdataset1.Next; clientdataset1.Delete; end; |
AW: Autoinc Feld im Clientdataset auf 1 setzen
Wie wäre es denn mal mit
![]() Manchmal hilft ein Blick in die Doku die Klasse besser zu verstehen |
AW: Autoinc Feld im Clientdataset auf 1 setzen
autoinc ändert sich nicht
|
AW: Autoinc Feld im Clientdataset auf 1 setzen
Zitat:
Aber es ist meist auch nicht nötig den Wert zu ändern. Wenn man die Tabelle leert und der Autoinczähler weiterläuft ist das ja kein Problem da man weiterhin eindeutige Primärschlüssel erhält. Zum Problem wird es dann wenn man Datensätze aus verschiedenen strukturgleichen Datenbanken in einer Datenbanktabelle zusammenfassen möchte. Eventuell kann man dann den ursprünglichen Wert des Feldes mit
Delphi-Quellcode:
löschen und die Datenbank vergibt dann automatisch einen neuen Wert.
Feldobject.Clear
Aber ich würde Autoinc-Felder entfernen und einen anderen Primärschlüssel suchen sobald es Probleme dieser Art gibt. |
AW: Autoinc Feld im Clientdataset auf 1 setzen
Dann wird doch wohl das Einfachste sein, die Datenmenge zu schließen, die zugehörige Datei zu löschen und dann die Datenmenge wieder zu erzeugen.
|
AW: Autoinc Feld im Clientdataset auf 1 setzen
Leider hast du nicht angegeben was für eine Datenbank du benutzt. Bei mySQL gäbe es folgende Möglichkeit:
SQL-Code:
ALTER TABLE tbl AUTO_INCREMENT = 1;
|
AW: Autoinc Feld im Clientdataset auf 1 setzen
Zitat:
|
AW: Autoinc Feld im Clientdataset auf 1 setzen
Achso, das kannte ich bislang noch nicht. Nach kurzem Nachlesen sind das dann wohl einfache XML-Dateien und hat nicht wirklich was mit einer Datenbank und SQL-Befehlen zu tun.
|
AW: Autoinc Feld im Clientdataset auf 1 setzen
ich habe nur ein einfaches clientdataset und ne datasource kompo. Kann ich nicht eine leere datei erstellen diese leer machen und dann bei bedarf diese nur ins clientdataset laden?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:58 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 by Thomas Breitkreuz