Toon posts:

[delphi] mysql over odbc, locate doet raar

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,

ik heb een applicatie die via een odbc-koppeling connect met een mysql-database. dat werkt allemaal uitstekend alleen de Locate-functie doet erg vreemd. Ik heb een table waarvan ik de datasource op die odbc-alias heb gezet, alleen als ik ga Locaten neemt hij niet altijd de velden die bij de key waar ik op gezocht heb. Heeft iemand hier ervaring mee?
Is een beetje vage uitleg van de fout maar dat komt omdat ik er zelf ook niet echt logica in kan vinden. Ik zoek een aantal keys, bij de eerste gaat het goed en bij alle volgende neemt hij verkeerde waarden.
dit is de code van de locate, leek mij okee:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
procedure TdmHolliday.GetHollidayData(holliday_id: string;
  var description: string; var day, month, year: integer);
begin
    with Holliday do
    begin
        Open;
        Locate('holliday_id', holliday_id, []);
        description := FieldByName('description').AsString;
        day := FieldByName('day').AsInteger;
        month := FieldByName('month').AsInteger;
        year := FieldByName('year').AsInteger;
        Close
    end
end;


Alvast bedankt voor reactie..

[edit]
poging om het wat duidelijker te maken:
deze functie wordt aangeroepen vanuit een andere class. ik verzamel eerst de holliday_id's waar ik vervolgens middels deze functie de rest van de gegevens bijraap. de id's zijn okee, heb ik al gedebugd dus het moet wel de locate-functie zijn die moeilijk doet. in de database staat alles okee.

[ Voor 16% gewijzigd door Verwijderd op 02-09-2004 15:46 ]


Verwijderd

Topicstarter
Nou, na nog wat deja-en bennik er achter en t'is erg vaag!

de ids in de tabel waren EXACT hetzelfde als die waar ik op zocht en toch deed hij het MET loCaseSensitive optie aan wel en zonder niet.
dus als iemand hier later nog es probleme mee krijgt..

modje, slotje!!!

  • Tomatoman
  • Registratie: November 2000
  • Laatst online: 23:27

Tomatoman

Fulltime prutser

Je gebruikt een ID van het type string? Dat is over het algemeen onlogisch. Normaal gebruik je een ID van het type integer of autonummering, een eventueel daarbij behorende string kun je dan opzoeken in een aparte tabel. Dit heeft waarschijnlijk niets met jouw probleem te maken, maar je bent nooit te oud om te leren :P

offtopic:
Zo'n ding heet een holiday :)

Een goede grap mag vrienden kosten.