|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Sep 2003
Città: Angri - Milano
Messaggi: 358
|
Visual c++ recordset
ciao volevo chiedervi un aiuto con i recordset di visual c++
proticamente io faccio una select che mi ritorna 4 campi, se tutti i campi sono valorizzati non ce problema, ma se uno dei 4 e vuoto mi va in errore. Sappete perchè e cosa devo fare per rimediare qui un pò del mio codice: //eseguo la query ptrRS = m_Connection->Execute(bls_query,NULL,ADODB::adCmdText); while (!ptrRS->IsEOF){ sprintf(ls_datetime ,"%s", (LPCTSTR)(_bstr_t) ptrRS->Fields->GetItem("datetime")->Value); sprintf(ls_user_msg ,"%s", (LPCTSTR)(_bstr_t) ptrRS->Fields->GetItem("usr_msg")->Value); sprintf(ls_cur_status ,"%s", (LPCTSTR)(_bstr_t) ptrRS->Fields->GetItem("cur_sts")->Value); sprintf(ls_reason ,"%s", (LPCTSTR)(_bstr_t) ptrRS->Fields->GetItem("reason_msg")->Value); ptrRS->MoveNext(); ll_count_rows++; } ptrRS->Close(); se uno dei campi è vuoto mi da errore ma non mi sembra normale ciao
__________________
Siamo eredi del nostro passato, il futuro è l'unica possibilità di rinascita. XBOXGamerTAG:nightwish78 Dell Studio XPS 16 (1645)-FullHD RGBLed-Intel Core i7 820QM-4GB DDR3-ATI HD 4670 1GB DDR3-HD 320GB 7200 rpm flickr |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Feb 2003
Città: fra casa e lavoro
Messaggi: 1061
|
è normale perchè ti ritorna un NULL, o meglio, un VT_NULL
dovresti sempre fare una cosa tipo Codice:
variant_t val = ptrRS->Fields->GetItem("datetime")->Value if(!VT_NULL(&val)) // ok, posso stampare il valore |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Sep 2003
Città: Angri - Milano
Messaggi: 358
|
grazie tante per la risposta
ma ho un problemino col tuo if(!VT_NULL(&val)) mi da questo errore: error C2064: term does not evaluate to a function grazie
__________________
Siamo eredi del nostro passato, il futuro è l'unica possibilità di rinascita. XBOXGamerTAG:nightwish78 Dell Studio XPS 16 (1645)-FullHD RGBLed-Intel Core i7 820QM-4GB DDR3-ATI HD 4670 1GB DDR3-HD 320GB 7200 rpm flickr |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Sep 2003
Città: Angri - Milano
Messaggi: 358
|
ok, ho risolto con
if (val.vt != 1) //stampo il valore grazie ancora ciao zelig
__________________
Siamo eredi del nostro passato, il futuro è l'unica possibilità di rinascita. XBOXGamerTAG:nightwish78 Dell Studio XPS 16 (1645)-FullHD RGBLed-Intel Core i7 820QM-4GB DDR3-ATI HD 4670 1GB DDR3-HD 320GB 7200 rpm flickr |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Feb 2003
Città: fra casa e lavoro
Messaggi: 1061
|
ah si giusto, per l'altro ci vuole un include che non ricordo (mi pare... mmm)
boh cmq io ho risolto con una classe Field templatizzata che mi fa tutto il lavoro sporco ![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:22.