Seite 2 von 2

Re: AutoIncrement

Verfasst: Di, 02. Jun 2020 16:51
von Tom
Das ist sogar eine sehr gute Idee, Manfred. Selbst wenn man Datenbestände mischen oder zusammenführen muss oder so, hat man mit UIDs keine Probleme mehr. Bei numerischen Zählern kann das ein großer Aufwand werden. Und die paar Bytes mehr sind heutzutage ja nicht wirklich ein Problem.

Re: AutoIncrement

Verfasst: Di, 02. Jun 2020 17:05
von Marcus Herz
@UliTs
Doch, durch die Transaction kann immer nur 1 Satz angelegt werden und diese ID wird zurückgegeben, dann kann der nächste eine ID abfragen,

Re: AutoIncrement

Verfasst: Di, 02. Jun 2020 22:14
von UliTs
Marcus Herz hat geschrieben: Di, 02. Jun 2020 17:05 @UliTs
Doch, durch die Transaction kann immer nur 1 Satz angelegt werden und diese ID wird zurückgegeben, dann kann der nächste eine ID abfragen,
Nein, meines Erachtens können (natürlich) mehrere Transaktionen gleichzeitig ausgeführt werden. Das würde ja sonst bei jedem Server zu viel zu langen Reaktionszeiten führen. Deine Lösung hatte ich auch zuerst im Einsatz. Leider alle paar Wochen erfolglos.

Re: AutoIncrement

Verfasst: Mi, 03. Jun 2020 7:00
von Jan
Uli,

das Autoincrement-Feld in der FOXCDX wird einfach nur als "Data Type" = "autoinc", mit "Index" = "no" aufgeführt. Ansonsten gibt es keine weiteren Werte zu dem Feld.

Dazu muß ich aber bemerken, das die dbf extern erstellt wurde, und dann in den ADS integriert worden ist. Das ist bei dem Kunden mit nahezu allen dbf so. Halt historisch gewachsen. Als ich bei dem gestartet bin hatte der noch DBFNTX, das habe ich auf FOXCDX umgeschrieben, und dann später in den ADS geschoben. Beides Schritte, die ich nie bereut habe.

Jan

Re: AutoIncrement

Verfasst: Mi, 03. Jun 2020 7:05
von Manfred
Hi Jan,
was heißt Index "No"? Wird die Spalte nicht indiziert?

Re: AutoIncrement

Verfasst: Mi, 03. Jun 2020 7:49
von UliTs
Manfred hat geschrieben: Mi, 03. Jun 2020 7:05 Hi Jan,
was heißt Index "No"? Wird die Spalte nicht indiziert?
Ich vermute, es gibt schon einen internen Index, der aber nicht aufgeführt wird.

Re: AutoIncrement

Verfasst: Mi, 03. Jun 2020 7:58
von UliTs
Jan hat geschrieben: Mi, 03. Jun 2020 7:00das Autoincrement-Feld in der FOXCDX wird einfach nur als "Data Type" = "autoinc", mit "Index" = "no" aufgeführt. Ansonsten gibt es keine weiteren Werte zu dem Feld. ...
Danke für die Info. Und was steht beim Tabellentyp? Das kannst Du im ARC bei der Tabelle unter Eigenschaften/Reiter Table Properties sehen.

Re: AutoIncrement

Verfasst: Mi, 03. Jun 2020 8:22
von Manfred
Uli,
es geht aber jetzt immer noch um die DBF Umgebungen und da wird dann ein CDX benötigt. Was der ADS macht, wenn ADT TAbellen reiner Natur genommen werden ist wieder was anderes. Dann wird er sich schon darum kümmern, das ein KEY Feld indiziert ist. Aber erstmal muß ich mich darum kümmern, das das KEy Feld indiziert ist. Deshalb würde ein versteckter Index mMn nichts bringen.

Re: AutoIncrement

Verfasst: Fr, 05. Jun 2020 5:23
von UliTs
Hallo Jan,
Kannst Du bitte berichten?
Danke!

Re: AutoIncrement

Verfasst: Fr, 05. Jun 2020 5:38
von Jan
Uli,

Du bist so selten hier, dann gleich hetzen?

Laß mich heute erstmal wieder bei dem Kunden sein, dann kann ich auch nachschauen.

Jan

Re: AutoIncrement

Verfasst: Fr, 05. Jun 2020 5:52
von UliTs
Jan hat geschrieben: Fr, 05. Jun 2020 5:38Du bist so selten hier, dann gleich hetzen?
...
Sorry.
Sollte nicht so rüberkommen.

Re: AutoIncrement

Verfasst: Fr, 05. Jun 2020 8:35
von Jan
Uli,

das ist VFP. Anders als bei allen anderen Tabellen ohne das Autoinkrement-Feld, die sind CDX. Was aber historische Gründe hat, Friedhelm hatte mir zu Anfangszeiten mit dem ADS gesagt ich solle VFP nicht nehmen als Tabellentypen, weil das fehlerhaft sei.

Jan

Re: AutoIncrement

Verfasst: Fr, 05. Jun 2020 8:47
von UliTs
Ah, danke. Auch interessant mit dem Hinweis auf Friedhelm.

Re: AutoIncrement

Verfasst: Do, 08. Okt 2020 18:19
von Manfred
ich habe gerade nochmal das Video aus 2016 geschaut von Joachim. Ab Minute 22-24 kommt das Thema SELECT newidstring() bzw. SELECT newid(). Hat da jemand schonmal mit gearbeitet?

Re: AutoIncrement

Verfasst: Do, 08. Okt 2020 18:30
von Manfred
ok, war was anderes. Es geht dabei um die reinen ADT Tabellen und einem GUID Feld. Das vergibt dann automatisch bei Insert eine GUID.

Re: AutoIncrement

Verfasst: Mo, 07. Dez 2020 9:54
von Manfred
so, alles fertig. Jetzt muß ich aber noch einige Felder mit einer UID befüllen. Gibt es da einen SQL Befehl für, oder geht das mit dem Architekten, oder wie bekommt man das ohne extra programmieren zu müssen hin?

Re: AutoIncrement

Verfasst: Mo, 07. Dez 2020 10:35
von nightcrawler
UID, also GUID?

Code: Alles auswählen

UPDATE mytable SET id=newid() WHERE id IS NULL

Re: AutoIncrement

Verfasst: Mo, 07. Dez 2020 12:18
von Manfred
so ein Mist, das war natürlich mal wieder zu einfach....
Aber nach so einer Funktion hatte ich gesucht, aber nicht in der Hilfe gefunden.