J'ai déjà posé la question mais j'ai pas encore trouvé.
J'essaie d'ajouter un enregistrement à une table dans une base Access à travers ODBC (mon programme est en visual c++). ma connexion est bon, j'ai pu lire mes Data de la base, sauf que à chaque fois j'appel la fonction AddNew() de CRecordset il me jette sauvagement dehors lors de l'éxecution. Voici mon code:
void CExpressoCito_prjView::OnAjout()
{
CDatabase Expresso;
Expresso.OpenEx(_T( "DSN=ExpressoCito_db;UID="));
CRecordset rs(&Expresso);
rs.Open(CRecordset::dynaset,"select [Id-exp],[texte],[origine] from Expression");
if( !rs.CanAppend( ) )
{
AfxMessageBox( "Impossible d'ajouter un renregistrement dans la base!" );
return;
}
else
{
//rs.Requery( );
rs.AddNew( ); /*BOUMM ! ici il explose !!!*/
}
//on ferme la session de CRecordset
rs.Close();
//On ferme la session de CDatabase
Expresso.Close();
}