Pourquoi ça marche pas???? (ODBC et Visual C++ 6)

Pourquoi ça marche pas???? (ODBC et Visual C++ 6) - Programmation

Marsh Posté le 26-02-2001 à 17:29:38    

je crée un objet Cdatabase, je l'ouvre puis je cree un objet CRecordset qui pointe sur cette database et quand je veux l'ouvrir il plante.
 
je pense que la base est bien ouverte car si je fait un execSQL, j'obtient le resultat escompté. mais lors de l'ouverture du recordset j'ai:
 
                   Debug Assertion fail
                   program e:\CDTeck\CDTeck.exe
                   File dbcore.cpp
                   Line 66
 
 
 
 
voici le code:
 
CDatabase m_myDB;
m_myDB.OpenEx("DSN=MYDB;UID=sa;PWD=" );
 
CRecordset m_myrecord(&m_myDB);
my_record.Open(CRecordset::dynamic,"select * from table",CRecordset::readOnly);


---------------
Je suis un bleu mais je me soigne
Reply

Marsh Posté le 26-02-2001 à 17:29:38   

Reply

Marsh Posté le 26-02-2001 à 17:31:59    

Tu es obligé de mettre des paramètres dans le OpenEx ?
Sans param ça doit marcher mais tu choisiras ta base grace à une petite fenetre.

 

--Message édité par Mouky--

Reply

Marsh Posté le 26-02-2001 à 17:32:00    

ggrrr erreur de manip

 

--Message édité par Mouky--

Reply

Marsh Posté le 26-02-2001 à 17:45:52    

en choisissant la database dans la boite de dialogue j'ai exactement le meme probleme, mais je me prive en plus du principal avantage: l'automatisme.


---------------
Je suis un bleu mais je me soigne
Reply

Marsh Posté le 26-02-2001 à 22:31:33    

Voulà ce que je fais et ça marche :
 
CDatabase database;
database.Open(NULL);
CRecordset cursor1(&database);
strQuery="Select MAX,NB from DBAnb order by MAX";
 
if (!cursor1.Open( CRecordset::forwardOnly, strQuery, CRecordset::readOnly )) {
AfxMessageBox("Agree set query : execution failed !" );
return;
}
 
 
J'ai une boite mais j'en ai besoin

Reply

Marsh Posté le 27-02-2001 à 08:46:51    

je reprendrais pas le fameux couplet sur le passage de la théorie à la pratique. Mais, ton bout de code ne trappe pas, Mouky.  donc merci beaucoup. je vais continuer sur cette base.


---------------
Je suis un bleu mais je me soigne
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed