Query uitvoeren op MDB Database

Status
Niet open voor verdere reacties.

quadran

Gebruiker
Lid geworden
26 jul 2006
Berichten
162
Hallo

Ik heb volgende :

Code:
PloegenQuery1->Active= true;
PloegenQuery1->SQL->Clear();
PloegenQuery1->SQL->SetText("DELETE * FROM Ploegen;");
PloegenQuery1->ExecSQL();

en dit werkt perfect, echter ik heb ook nog het volgende wat verder in programma en dit werkt niet :confused:

Code:
PloegenQuery1->Active= false;
PloegenQuery1->Active= true;
PloegenQuery1->SQL->Clear();
PloegenQuery1->SQL->SetText("SELECT * FROM Ploegen ORDER BY PLOEGNAAM ASC;");
PloegenQuery1->Open();

Project ... raised exception class EOleException with message 'De huidige voorziening ondersteunt het retourneren van meerdere recordsets van één uitvoering niet'. Process stopped. Use Step or Run to continue.

Wat zou dit kunnen zijn aub ?

Met dank,
 
vervang PloegenQuery1->Open(); eens door PloegenQuery1->Execute(); en laat ASC eens weg in het statement daarvoor.
 
Hello,

bedankt voor antwoorden, maar :

die ASC is hoe ik wil sorteren, nl oplopen en

die ExecSQL mag volgens mij enkel bij DELETE, UPDATE, volgens de help van C++ Builder 6.0

Code:
Description

Call ExecSQL to execute an SQL command that does not return a set of records. This command is a query other than a SELECT query, such as an INSERT, UPDATE, DELETE, or CREATE TABLE query.

ExecDirect indicates that the query does not need to be prepared before it is executed. This parameter can be set to true if the query does not include any parameters. When ExecDirect is false, the query will be prepared before it is executed. Even when ExecDirect is false, you can avoid preparing the query every time ExecSQL is called by setting the Prepared property to true before calling ExecSQL the first time.

ExecSQL returns the number of rows affected by the executed command. This becomes the value of the RowsAffected property.

Note:	Do not use ExecSQL for commands such as SELECT queries that return data. When the command returns data, use the Open method or set the Active property to true.
 
1 gewoon proberen, dan weet je tenminste waar de fout (niet) zit. Eerst moeten de errors eruit.
2. die exec doe je in het eerste fragment ook. Edit: je hebt gelijk hierin.
 
Laatst bewerkt:
1, heb ik gedaan en getest = zelfde resultaat
2, omdat dit zo beschreven wordt in de HELP, een SQL die de Query aanpast moet via ExecSQL, als de SQL enkel data verwerkt moet die met Open.
 
sorry, dan weet ik het niet. Weet je zeker dat je fout in het getoonde fragment zit? Ik laat het hierbij omdat ik onvoldoende verstand heb van queries.
 
de blauwe lijn komt op de Clear regel te staan van de code.

als ik de tweede Query code volledig wegneem dan werkt het goed, althans 1x,

voer ik dan opnieuw de button uit dan krijg ik dezelfde fout echter in de eerste Query
(dus die met de ExecSQL)

:rolleyes:
 
Ik heb de Active = true / false weggenomen en heb nu geen fouten meer!

echter de sortering op PLOEGNAAM voert hij nog niet uit :o
 
Het lijkt erop dat je PloegenQuery1->SQL niet meer dan een keer mag gebruiken voor sommige taken. Misschien moet je voor elke keer dat je je button drukt een nieuwe query of een nieuwe sql maken.
edit: gepost voordat ik jouw nieuwe post kon lezen.
 
Laatst bewerkt:
Ik moest nog de Query aan de Grid koppelen en nu geeft hij fijntjes de gesorteerde data weer!

Bedankt herculez voor het meedenken !
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan