Hallo,
kennt jemand sich mit dem Feldtyp aus? Ich hab eigentlich hauptsächlich 2 Fragen dazu:
1) DbStruct() gibt eine Feldlänge von 4 zurück. Was ja nicht wirklich stimmen kann. Ich hab das mal bis 10.000.000 versucht, das funktioniert. Weiß jemand, wie hoch der Wert geschraubt werden kann (das ist allerdings eher theoretischer Natur, ich hab im Moment keinen Bedarf an so vielen Datensätzen )?
2) Ich wollte das eigentlich deswegen einsetzen, um eine eindeutige Satz-ID zu erhalten. Wie sicher ist denn das im Netzwerk? Funktioniert das immer korrekt? Oder tauchen da eventuell irgendwelche Probleme auf, die ich abfangen müsste/könnte?
Jan
Sequenz-Feldtyp
Moderator: Moderatoren
- Manfred
- Foren-Administrator
- Beiträge: 21214
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Hi Jan,
ich bin mir jetzt nicht sicher, ob ich Deine Frage verstanden habe, sie war etwas strubbelig, aber ich denke mal Du meinst die Feldbreite bei numerischen Feldern? 19 meine ich irgendwie im Kopf zu haben.
ich bin mir jetzt nicht sicher, ob ich Deine Frage verstanden habe, sie war etwas strubbelig, aber ich denke mal Du meinst die Feldbreite bei numerischen Feldern? 19 meine ich irgendwie im Kopf zu haben.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Manfred
- Foren-Administrator
- Beiträge: 21214
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Ja,
FOX. Sach datt doch ......
FOX. Sach datt doch ......
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- brandelh
- Foren-Moderator
- Beiträge: 15699
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 69 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Hi,
Der Wertebereich einer solchen liegt bei 0 to 4.294.967.295 ( 0 to 2^32-1).
Eine Fehlerquelle ist sicherlich dass ja jeder Client-PC diese verwalten muss und somit mehrere Köche vorhanden sind. Bei einem Datenbankserver (PostgresSQL etc.) erledigt das ein interner Task auf dem Server, was zweifelsohne sicherer ist.
Such doch mal in der Alaska KB nach ob dort was zu der Funktion steht.
So ganz neu scheint mir dieser Datentyp nicht zu sein.
eine Sequenz ist nichts anderes als eine 32-Bit unsigned Integervariable (double word), die allerdings von der DBE verwaltet wird. Somit sind die 4 Byte schon richtig.JAN hat geschrieben:DbStruct() gibt eine Feldlänge von 4 zurück. Was ja nicht wirklich stimmen kann.
Der Wertebereich einer solchen liegt bei 0 to 4.294.967.295 ( 0 to 2^32-1).
Genau dafür wurde sie geschaffen. Mangels praktischer Erfahrung kann ich jetzt nicht bestätigen, dass sie immer fehlerfrei arbeitet, aber sicher ist es Alaska besser möglich das intern sicher zu stellen, als uns die wir dafür meist eigene Funktionen verwendet haben.JAN hat geschrieben:Ich wollte das eigentlich deswegen einsetzen, um eine eindeutige Satz-ID zu erhalten. Wie sicher ist denn das im Netzwerk? Funktioniert das immer korrekt? Oder tauchen da eventuell irgendwelche Probleme auf, die ich abfangen müsste/könnte?
Eine Fehlerquelle ist sicherlich dass ja jeder Client-PC diese verwalten muss und somit mehrere Köche vorhanden sind. Bei einem Datenbankserver (PostgresSQL etc.) erledigt das ein interner Task auf dem Server, was zweifelsohne sicherer ist.
Such doch mal in der Alaska KB nach ob dort was zu der Funktion steht.
So ganz neu scheint mir dieser Datentyp nicht zu sein.
Gruß
Hubert
Hubert
- brandelh
- Foren-Moderator
- Beiträge: 15699
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 69 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Meine eigene Nummerierungsfunktion hat lokal und im Netz auf Windows Server 2000 (inkl.) immer gut funktioniert (go bottom, flock(), ID++, append blank etc. ...), war aber im Prinzip anfällig gegen Index- und Netzwerkfehler. Auch mit dem Cachen auf neueren Servern könnte es damit Probleme geben.Jan hat geschrieben: Nummerierung im Netzwerk zwar gut funktioniert, aber nicht sehr gut?
Der FoxPro Datentyp Sequenz muss sicherer sein als meine eigene Lösung, solange kein PDR in diese Richtung besteht (habe ich nicht geprüft). Aber vom Prinzip her besteht immer noch die Netzwerkproblematik.
Nur eine serverseitige Implementierung garantiert eine fehlerfreie Ausführung (solange der Server sauber arbeitet ) .
Für die Praxis bedeutet das, dass du mit diesem Feldtyp bestimmt die sicherste Option für DBF Dateien wählst.
Gruß
Hubert
Hubert