Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1891 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Visual C++ .NET 2003 & BDD

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Visual C++ .NET 2003 & BDD

n°1362193
remedy
Posté le 09-05-2006 à 10:55:30  profilanswer
 

Bonjour à tous!
 
Je souhaite développer une petite application en C++ pour la présenter le jour de l'examen (BTS info de gestion).
Cette appli consiste à gérer les réservations, les chambres et les clients d'un hotel.  :jap:  
 
Je souhaitais dans un premier tps la faire avec une interface graphique mais devant les contraintes de tps (j'ai encore deux autres appli à faire en deux semaines...) je préfère tabler sur la bonne vieille console noire... Bref j'ai créer un projet Win 32 (avec support des MFC). Ensuite j'ai ajouter une classe MFC ODBC Consumer que j'ai configuré grâce à l'appWizard.
 
Tout semble s'être déroulé correctement (j'ai deux nouveaux fichiers: nom_de_ma_table.cpp et nom_de_ma_table.h), mais je ne sais pas quoi faire maintenant. Comment ouvrir la connection à la base? comment effectuer une requête, récuperer les données, les utiliser?  :heink:  
 
J'ai passé toute la journée hier à faire des recherches et j'ai l'impression que personne n'utilise le C++ pour des accès BDD, je me trompe?  :lol:  
 
J'espère que vous m'aiderez un peu à avancer sur ce sujet, je désespère un peu là  :(

mood
Publicité
Posté le 09-05-2006 à 10:55:30  profilanswer
 

n°1362211
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 09-05-2006 à 11:09:10  profilanswer
 

http://msdn.microsoft.com/library/ [...] amples.asp


---------------
J'ai un string dans l'array (Paris Hilton)
n°1362870
remedy
Posté le 09-05-2006 à 22:25:26  profilanswer
 

Pouvez vous m'éclairer sur ces lignes de commandes svp? J'ai beau faire des recherches j'ai du mal à piger leur sens !
 

Code :
  1. inline void TESTHR(HRESULT x) {if FAILED(x) _com_issue_error(x);};


 
merci  ;)


Message édité par remedy le 09-05-2006 à 22:26:13
n°1363361
breizhbugs
Posté le 10-05-2006 à 14:44:59  profilanswer
 

Les HRESULT sont des codes retour de fonctions en général
Donc si le code de retour indique une erreur, on execute _com_issue_error(x).
J'ai pas trouver de doc sur cette fonction, mais je suppose qu'elle affiche une boite de dialogue avec un texte expliquant l'erreur.

n°1363567
remedy
Posté le 10-05-2006 à 16:42:09  profilanswer
 

ok merci.
 
J'ai un autre souci. J'ouvre une connexion grace à une fonction connectionstringX() (récupérée sur un exemple MS). Mais lorsque je souhaite ouvrir un recordset j'ai le message d'erreur 80004005 qui apparait...
 
Ca fais plus de trois heures que je lutte avec ça!!! que faire????
 
voici le code pour l'ouverture du recordset:

Code :
  1. void MoveFirstX()
  2. {
  3.     HRESULT    hr = S_OK;
  4.     _RecordsetPtr    pRstAuthors  = NULL;
  5. _bstr_t strCnn("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\bdessai.mdb;User Id=admin;Password=;" );
  6.     _bstr_t strMessage("UPDATE tbl_essai SET nom_blabla = "
  7.             "'ahah' WHERE nom_blabla = 'self'" );
  8.     int intCommand = 0;
  9.     // Temporary string variable for type conversion for printing.
  10.     _bstr_t  bstrFName;
  11.     _bstr_t  bstrLName;
  12.     try
  13.     {
  14.         // Open recordset from Authors table.
  15.         TESTHR(pRstAuthors.CreateInstance(__uuidof(Recordset)));
  16.         pRstAuthors->CursorType = adOpenStatic;
  17.         // Use client cursor to enable AbsolutePosition property.
  18.         pRstAuthors->CursorLocation = adUseClient;
  19.  system("pause" );
  20.  pRstAuthors->Open("tbl_essai",strCnn,adOpenStatic,
  21.            adLockBatchOptimistic, adCmdTable);

n°1363568
remedy
Posté le 10-05-2006 à 16:43:10  profilanswer
 

on voit pas super bien entre les balises de codes...
 
void MoveFirstX()  
{
    HRESULT    hr = S_OK;
    _RecordsetPtr    pRstAuthors  = NULL;
 _bstr_t strCnn("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\bdessai.mdb;User Id=admin;Password=;" );
    _bstr_t strMessage("UPDATE tbl_essai SET nom_blabla = "
            "'ahah' WHERE nom_blabla = 'self'" );
    int intCommand = 0;
 
    // Temporary string variable for type conversion for printing.
    _bstr_t  bstrFName;
    _bstr_t  bstrLName;
 
    try
    {
        // Open recordset from Authors table.
        TESTHR(pRstAuthors.CreateInstance(__uuidof(Recordset)));
        pRstAuthors->CursorType = adOpenStatic;
 
        // Use client cursor to enable AbsolutePosition property.
        pRstAuthors->CursorLocation = adUseClient;
  system("pause" );
  pRstAuthors->Open("tbl_essai",strCnn,adOpenStatic,  
           adLockBatchOptimistic, adCmdTable);

n°1363611
breizhbugs
Posté le 10-05-2006 à 17:13:04  profilanswer
 

Regarde la doc de la fonction qui genere l'erreur.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Visual C++ .NET 2003 & BDD

 

Sujets relatifs
Importation données XML vers BDD MySql[Résolu][.NET] ClickOnce (No Touch Deployment)
Probleme BDD[ASP.NET] Faire tourner de l'ASP.NET sans IIS
[VB.NET] Copier une resourceProblème de gestion des droits d'accès sous Access 2003
[Resolu] Appel de javascript depuis code .Net[ASP.NET 2.0 ] Les dossier "App_*" d'un projet Web??
[.NET] WebService : Comment les exploiter convenablement[C# ASP.NET][Probleme] Affecter un CSSCLASS dynamiquement ?
Plus de sujets relatifs à : Visual C++ .NET 2003 & BDD


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR