Lungi da me il voler polemizzare, ma ...
A prescindere che funziona, se non ricordo male, lavoravo con database Access, e, dopo aver creato la query (una simile, che mi faceva il popolamento dei campi di una tabella) sono andato a vedere la sintassi sql e l'ho riportata nel mio progetto visual basic.Originariamente inviato da gibra
Scusa ma la sintassi che stai usando non mi pare esista.
L'hai inventata tu?![]()
Comunque, ho preso quanto da te suggerito (il tuo esempio dell'uso del command e dei paramater)
codice:sql2 = "INSERT INTO " + Trim(tabe) + " (idpaz,data,idop,stato,idfass,idrif1,idyyrif1,idora) " _ & "values (@idpaz,@data,@idop,@stato,@idfass,@idrif1,@idyyrif1,@idora)" With cmd Set par = .CreateParameter("@idpaz", adInteger, adParamInput, vista1.ListItems(i).SubItems(2)) .Parameters.Append par Set par = .CreateParameter("@data", adDBDate, adParamInput, datacontcodfisc) .Parameters.Append par Set par = .CreateParameter("@idop", adInteger, adParamInput, vista1.ListItems(i).SubItems(3)) .Parameters.Append par Set par = .CreateParameter("@stato", adWChar, adParamInput, 20, "0") .Parameters.Append par Set par = .CreateParameter("@idfass", adInteger, adParamInput, vista1.ListItems(i).SubItems(7)) .Parameters.Append par Set par = .CreateParameter("@idrif1", adInteger, adParamInput, vista1.ListItems(i).SubItems(4)) .Parameters.Append par Set par = .CreateParameter("@idyyrif1", adInteger, adParamInput, vista1.ListItems(i).SubItems(5)) .Parameters.Append par Set par = .CreateParameter("@idora", adInteger, adParamInput, vista1.ListItems(i).SubItems(6)) .Parameters.Append par End With cmd.ActiveConnection = dbextfarm 'è la connessione aperta al database cmd.CommandType = adCmdText 'il Tipo di comando, è semplice testo cmd.CommandText = sql2 'il testo del comando, la nostra query cmd.Execute
ma il risultato non cambia, sempre 01/01/0001. Vorrà dire che userò il vecchio recordset.
Grazie per il suggerimento.
P.S.: per la cronaca ho provato anche sia type data che datatime, ma nulla.
La cosa strana e che se faccio i due inserimenti 'contemporaneamente' quello con il recordset inserisce la data correttamente
Conviene lasciar perdere?codice:rsorario.Open Trim(tabella), dbextfarm, adOpenStatic, adLockOptimistic rsorario.AddNew With rsorario .AddNew !Data = DateValue(vista1.ListItems(i)):!idpaz = vista1.ListItems(i).SubItems(2) !idop = vista1.ListItems(i).SubItems(3): !stato = 0: !idfass =vista1.ListItems(i).SubItems(7): !idrif1 = vista1.ListItems(i).SubItems(4): !idyyrif1 = vista1.ListItems(i).SubItems(5):!idora = vista1.ListItems(i).SubItems(6) .Update .Close End With
Ancora Grazie

Rispondi quotando