Hallo,
in meiner Datenbank wurden einige Werte falsch geschrieben, die ich jetzt korrigieren muss. Es wurde im Code Werte über 32767 in int Vars geschrieben, diese wurden dann in die Datenbank geschrieben. Um sie zu rekonstruieren habe ich folgende Fragen:
1) Wenn ich in eine Signed Int Variable 32268 schreibe, dann ist der Wert der Variable -32268, richtig?
2) Die Formel, um falsche int Werte aus der DB wieder umzuwandeln lautet also:
F - Falscher Wert aus der DB
X - Möglichkeit (fängt bei 0 an). 0 ist die erste Möglichkeit die der Long Wert gehabt haben könnte
32768 + (32768 + F) + (X*65536)
Geht ihr da mit mir konform?
Wenn in der DB also beispielsweise -32765 steht, dann kann der ursprüngliche Wert
1) 32771 (X=0)
2) 98307 (X=1)
3) 168843 (X=2)
.
.
.
gewesen sein.
Kann mir jemand helfen in dem er mir sagt ob diese Überlegung richtig ist?
Vielen Dank für eure Hilfe
in meiner Datenbank wurden einige Werte falsch geschrieben, die ich jetzt korrigieren muss. Es wurde im Code Werte über 32767 in int Vars geschrieben, diese wurden dann in die Datenbank geschrieben. Um sie zu rekonstruieren habe ich folgende Fragen:
1) Wenn ich in eine Signed Int Variable 32268 schreibe, dann ist der Wert der Variable -32268, richtig?
2) Die Formel, um falsche int Werte aus der DB wieder umzuwandeln lautet also:
F - Falscher Wert aus der DB
X - Möglichkeit (fängt bei 0 an). 0 ist die erste Möglichkeit die der Long Wert gehabt haben könnte
32768 + (32768 + F) + (X*65536)
Geht ihr da mit mir konform?
Wenn in der DB also beispielsweise -32765 steht, dann kann der ursprüngliche Wert
1) 32771 (X=0)
2) 98307 (X=1)
3) 168843 (X=2)
.
.
.
gewesen sein.
Kann mir jemand helfen in dem er mir sagt ob diese Überlegung richtig ist?
Vielen Dank für eure Hilfe