hallo,<br><br>
wir greifen über ado auf eine accessdatenbank zu. um für einen neuen eintrag den primärschlüssel zu setzen verwenden wir eine<br> funktion, welche über sql den neuesten index zurücklieftert. die funktion tut auch das was sie soll, aber bevor diese geschieht, erhalten wir <br>eine exception:
zugriffsverletzung in modul "msjet40.dll"<br>
folgender quellcode repräsentiert diese funktion.<br>
für hilfe schon mal vielen dank im vorraus.<br><br>
int GetNewId(String Tablename, String PKey)<br>
{ //Gibt die jeweils neue ID (Primärschlüssel) zurück.<br>
int NewId;<br>
try<br>
{<br>
AdoDataModule->MaxIDADOQuery->Close();<br>
AdoDataModule->MaxIDADOQuery->SQL->Clear();<br>
AdoDataModule->MaxIDADOQuery->SQL->Add("SELECT MAX(" + PKey + ")");<br>
AdoDataModule->MaxIDADOQuery->SQL->Add("FROM " + Tablename);<br>
AdoDataModule->MaxIDADOQuery->Open();<br>
NewId = AdoDataModule->MaxIDADOQuery->Fields->Fields[0]->AsInteger + 1;<br>
}<br>
catch (...)<br>
{<br>
return NewId = 0; //Wenn 0, dann lief was krumm.<br>
}<br>
return NewId;<br>
}<br>
wir greifen über ado auf eine accessdatenbank zu. um für einen neuen eintrag den primärschlüssel zu setzen verwenden wir eine<br> funktion, welche über sql den neuesten index zurücklieftert. die funktion tut auch das was sie soll, aber bevor diese geschieht, erhalten wir <br>eine exception:
zugriffsverletzung in modul "msjet40.dll"<br>
folgender quellcode repräsentiert diese funktion.<br>
für hilfe schon mal vielen dank im vorraus.<br><br>
int GetNewId(String Tablename, String PKey)<br>
{ //Gibt die jeweils neue ID (Primärschlüssel) zurück.<br>
int NewId;<br>
try<br>
{<br>
AdoDataModule->MaxIDADOQuery->Close();<br>
AdoDataModule->MaxIDADOQuery->SQL->Clear();<br>
AdoDataModule->MaxIDADOQuery->SQL->Add("SELECT MAX(" + PKey + ")");<br>
AdoDataModule->MaxIDADOQuery->SQL->Add("FROM " + Tablename);<br>
AdoDataModule->MaxIDADOQuery->Open();<br>
NewId = AdoDataModule->MaxIDADOQuery->Fields->Fields[0]->AsInteger + 1;<br>
}<br>
catch (...)<br>
{<br>
return NewId = 0; //Wenn 0, dann lief was krumm.<br>
}<br>
return NewId;<br>
}<br>