Toon posts:

[MySQL] is 0 zo groot?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Beste tweakers,

Ik heb een MySQL tabel met 3 kolommen:
KostplaatsID (BigInt unsigned)
ContactID (BigInt unsigned)
LocatieID (BigInt unsigned)

Alle drie mogen ze niet null zijn. KostplaatsID is een autonummer, de overige hebben default waarde 0. De tabel is gemaakt met MySQL-Front.

Nu spreek ik hem aan met een .NET web applicatie. Ik vraag alle velden uit waar KostplaatsID een bepaalde waarde heeft (bijvoorbeeld 16). Hier komt o.a. uit:
code:
1
2
KostplaatsID ContactID LocatieID
16           4         0


Als ik dit in MySQL-Front doe. Vraag ik hem via mijn .NET dataAdaptor op in een dataset, dan is de waarde in LocatieID alleen 18446744073709551615. Nu heb ik al uitgevonden dat dit de MySQL maximum waarde is voor een unsigned bigint. Maar waarom krijg ik die retour terwijl ik 0 terug had verwacht?

Is dit een bekende bug? MySQL-Front geeft een perfect resultaat. Ik snap er helemaal niks meer van.

[ Voor 3% gewijzigd door Verwijderd op 04-07-2004 13:11 ]


Verwijderd

Topicstarter
Toevallig net achter het antwoord gekomen...

Als je in een MySQL unsigned veld via de .NET provider een -1 opvoert dan zie je in MySQL-Front gewoon 0 staan. De opdracht voert ook gewoon uit zonder fouten. Als je het veld in .NET alleen weer terug vraagt krijg je de grootste waarde van een unsigned bigint veld terug.

Erg bagger dus. Bijna net zo stom als je velden unsigned maken terwijl je voor een "ongekozen" selectie toch een -1 op gaat voeren |:(

Bedankt in elk geval!