Falscher Integer Wert aus MySQL-Datenbank

Fragen zur Konfiguration & Abfragetechniken der Datenbank

Falscher Integer Wert aus MySQL-Datenbank

Beitragvon wolf am 30.12.2009, 22:23

In einer Tabelle einer MySQL-Datenbank gibt es u.a ein Feld mit Namen object_id und integer-Werten.
Beim Auslesen mit der console wird alles richtig angezeigt:
>>Objects.find(:first)
=> ..., object_id: 2001, ...
Wenn man dann aber auf das Attribut direkt zugreift, erhält man:
>>Objects.find(:first).object_id
=> -612810548
Wenn man nun ein anderes Attribut anzeigen lässt (alle anderen Attribute werden richtig angezeigt), etwa:
>>Objects.find(:first).sort_value
=> "richtiger String"
und danach wieder auf object_id zugreift, wird der Wert richtig angezeigt:
>>Objects.find(:first).object_id
=> 2001
Das Problem taucht nur bei diesem einen Attribut auf, ist aber nicht auf die Console beschränkt.
Die Datenbank wurde nicht mit Rails angelegt. Andere Tools, etwa der mysql-Client lesen die Werte richtig.
Ruby Version: 1.8.7 (i686-linux), RubyGems Version: 1.3.1, Rails Version: 2.2.2, ActiveRecord Version: 2.2.2
Linux version 2.6.16.60-0.21-bigsmp (geeko@buildhost) (gcc version 4.1.2 20070115 (SUSE Linux)) #1

Es würde mich freuen, wenn mir jemand eine Erkärung dazu liefern könnte.
Vielen Dank
Wolf
wolf
 
Beiträge: 2
Registriert: 15.04.2009, 19:51

Re: Falscher Integer Wert aus MySQL-Datenbank

Beitragvon wolf am 31.12.2009, 12:57

Hallo,
eine teilwiese Erklärung habe ich inzwischen gefunden:

"object_id" ist eine Methode der Klasse "Object" und das wird hier mit dem Feld-Namen
der Tabelle durcheinandergebracht.

Viele Grüße
wolf
wolf
 
Beiträge: 2
Registriert: 15.04.2009, 19:51


Zurück zu M - Model

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron