begin process at 2012 05 29 17:00:28
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Base de données

 > 

problème d'enregistrement de variables à partir d'une base de données Access


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problème d'enregistrement de variables à partir d'une base de données Access

mercredi 19 mai 2004 à 14:23:40 | problème d'enregistrement de variables à partir d'une base de données Access

maevasa

bonjour j'ai un problème avec ce bout de code quand je compile mon programme tout marche mais c'est au lancement de l'exe qu'il plante
que dire de plus result[i].qualite est un char*
je suis vraiment perdu quelqu'un peut-il m'éclairer?


try
{
{recordset->Open("SELECT * from refr", _variant_t((IDispatch *) connexion,true),
adOpenStatic, adLockReadOnly, adCmdText);}

//les affichent
while(!recordset->EndOfFile)
{
i=i+1;
_variant_t var;
var = recordset->Fields->GetItem(L"qualite")->GetValue();
result[i].qualite= _bstr_t(var.bstrVal);
std::cout <<result[i].qualite<< std::endl;
recordset->MoveNext();
};
//referme le recordset
recordset->Close();
}
catch(_com_error &e)
{
MessageBox(0, (LPCSTR) e.Description(), szappname, MB_ICONEXCLAMATION);
recordset->Close();
return 0;
}




ah oui autre chose j'arrive à inscrire le résultat de ma requête avec le code suivant:


while(!recordset->ADOEOF)
{
_variant_t var;
var = recordset->Fields->GetItem(L"value")->GetValue();
std::cout << static_cast<char *>(_bstr_t(var.bstrVal))<< std::endl;
recordset->MoveNext();
};
mercredi 19 mai 2004 à 14:26:31 | Re : problème d'enregistrement de variables à partir d'une base de données Access

BruNews

Administrateur CodeS-SourceS
Exemple fait dans mes sources, gestion films par ADO.

ciao...
BruNews, Admin CS, MVP Visual C++
mercredi 19 mai 2004 à 14:37:44 | Re : problème d'enregistrement de variables à partir d'une base de données Access

maevasa


bonjour,

ça fait plaisir d'avoir une réponse aussi rapide!

je sais que dans tes sources il y a des exemples puisque je m'en suis inspirée pour certaine partie mais c'est pas un exemple que je voudrais .
merci qaund même.

j'aimerai comprendre pourquoi j'arrive à inscrire à l'écran des données mais pas à les enregistrer dans une structure.
surtout que j'ai pas d'erreur qaund je compile avec visual microsoft c++.net

merci d'avance
Maeva
mercredi 19 mai 2004 à 15:21:14 | Re : problème d'enregistrement de variables à partir d'une base de données Access

BruNews

Administrateur CodeS-SourceS
result[i].qualite c'est quoi 'qualite' pour que tu puisses ecrire '=' ???

ciao...
BruNews, Admin CS, MVP Visual C++
lundi 24 mai 2004 à 08:25:37 | Re : problème d'enregistrement de variables à partir d'une base de données Access

maevasa

qualité c'est un char *
merci encore de m'aider
lundi 24 mai 2004 à 09:04:01 | Re : problème d'enregistrement de variables à partir d'une base de données Access

BruNews

Administrateur CodeS-SourceS
quand on a un char*, on fait une operation de copie et non une affectation sur le pointeur, non ???

_bstr_t bst;
_variant_t var;
var = recordset->Fields->GetItem(L"qualite")->GetValue();
if(var.vt == VT_BSTR) {
bst = var;
strcpy(result[i].qualite, bst);
}

ciao...
BruNews, Admin CS, MVP Visual C++
lundi 24 mai 2004 à 10:42:35 | Re : problème d'enregistrement de variables à partir d'une base de données Access

maevasa


merci j'y avais pas pensé je suis une novice ;-)
cependant j'ai la même erreur c'est à dire:

JIT debugging failed with the following error: Accès refusé.
JIT Debugging was initialited by the user account 'SGCV-CAO\saill'
est ce que tu as une idée parce ue là j'en peux plus!
merci d'avance
Maeva
lundi 24 mai 2004 à 10:54:34 | Re : problème d'enregistrement de variables à partir d'une base de données Access

BruNews

Administrateur CodeS-SourceS
J'espere que c'est bien:
result[i].qualite[120] par exemple comme declaration. Faut un buffer pour copier des donnees.

ciao...
BruNews, Admin CS, MVP Visual C++
lundi 24 mai 2004 à 11:03:36 | Re : problème d'enregistrement de variables à partir d'une base de données Access

maevasa

non sinon il met cette erreur:
c:\Maeva\Test\connectionbd\conection\connec.cpp(129): error C2440: '=' : cannot convert from '_bstr_t' to 'char [9]'
donc j'ai définit la structure réfractaire comme ça
class Refractaire {
public:
char *qualite;
char *repere;
char *description;
char *des_anglaise;
double volume;
char *f_ref;
double dim[7];
int critere;

friend std::ostream& operator<<(std::ostream &os,const Refractaire &r);
};


et result est un :


Refractaire *result;


je sais j'ai vraiment du mal!!
merci de m'aider
lundi 24 mai 2004 à 11:08:25 | Re : problème d'enregistrement de variables à partir d'une base de données Access

BruNews

Administrateur CodeS-SourceS
pas possible d'enregistrer quoi que ce soit sur un pointeur A PART UNE ADRESSE MEMOIRE, faut donc un buffer.
class Refractaire {
public:
char qualite[24]; // voit taille qui convient, MULTI DE 4 !!!
...
...

ainsi tu feras des strcpy sur les buffers et non '='.

ciao...
BruNews, Admin CS, MVP Visual C++

1 2

Cette discussion est classée dans : problème, recordset, code, var, qualite


Répondre à ce message

Sujets en rapport avec ce message

(MS VCpp) Problème de variables [ par YS1 ] J'ai créé une DLL C+PP que je souhaite utiliser dans un programe VB.La fonction principale de la DLL renvoie un certain nombre de variables, qui sont problème chaines de caractères [ par tintin72 ] BonjourJ'aimerai avoir un petit éclaircissement sur les chaines de caractères.Voici un programme tout bête... char prenom[100]; cout gets(pr Petit problème de code [ par mimyne ] Bonjour g le code suivant:void Resultat_Clicked(Object* pSender, EventArgs* pArgs){ int operation = 5; char* chaine[10]; if (pSender == Btnres) { //o Problème de code en c++ (fonction itoa) [ par mimyne ] voila g le code suivant:void Resultat_Clicked(Object* pSender, EventArgs* pArgs){ int operation = 5; char* chaine[2]; if (pSender == Btnres) { { ito If problème [ par Hades53 ] J'ai un problème avec If :char*variable1;variable1 = "bonjour";if (variable1 == "bonjour") cout < Problème incompréhensible [ par CyberP ] Dans un callback d'une fenêtre, j'ai inséré ce code :case WM_PAINT:{ PAINTSTRUCT peindre; HDC rect; rect = BeginPaint(hWnd, &peindre); Engine.dr Un porblème : Oui un très gros ! [ par PiX3L ] Salut tt le monde,bon c'est super le C++ surtout quand y a pas de bug !Mais le problème c'est que j'en ai et que ça fais 2 heures que je suis dessus e Problème : Récupération des données d'un Buffer pour mettre dans une EditBox [ par Memerosti ] BonjourMon problème est le suivant : J'ai ouvert un fichier, lu ses données, et jusque là ça va. Mais ensuite je voudrais récupérer ces données, pour [C++][MFC] Problème avec les onglets [ par impress ] Bonjour, Après avoir parcouru différents forums et tutoriaux, j'ai réussi (enfin !) à créer des onglets de façon propre.Le problème, c'est que je n'ar pb stupide : diviser [ par guifr ] Alors là, je sens que je vais craquer, je suis à deux doigts de commettre un ordicide ! sois mon pc est complètement stupide, ou alors c'est moi (ce q


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,858 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales