+ Rispondi al Thread
Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Update su DB fallisce

  1. #1
    temerario non è in linea Novello
    Post
    21
    Ciao a tutti
    Mi trovo con questo grosso problema.
    Ho una Sub per l'aggiornamento di alcuni dati sul DB.

    Private Sub UpdateCorpo(ByVal trn As MySqlTransaction, ByVal id_testa As Int64)
    Dim conn As MySqlConnection = CType(getStrConnection("conn"), MySqlConnection)
    Dim dt As DataTable = CType(Session("dt"), DataTable)

    Dim insertCorpo As String = "INSERT INTO documento_corpo (codice" & _
    ",id_testa" & _
    ",fornitore" & _
    ",produttore" & _
    ",articolo" & _
    ",varieta" & _
    ",misura" & _
    ",grado" & _
    ",tipo_imballo" & _
    ",quantita_box" & _
    ",quantita_um_x_box" & _
    ",quantita_um" & _
    ",data_consegna" & _
    ",luogo_arrivo" & _
    ",cliente_fornitore" & _
    ",prezzo_unitario" & _
    ",sconto" & _
    ",totale" & _
    ",utente) VALUES (" & _
    "?codice" & _
    ",?id_testa" & _
    ",?cfornitore" & _
    ",?cproduttore" & _
    ",?carticolo" & _
    ",?cvarieta" & _
    ",?cmisura" & _
    ",?cgrado" & _
    ",?ctipo_imballo" & _
    ",?quantita_box" & _
    ",?quantita_um_x_box" & _
    ",?quantita_um" & _
    ",?data_consegna" & _
    ",?cluogo_arrivo" & _
    ",?ccliente_fornitore" & _
    ",?prezzo_unitario" & _
    ",?sconto" & _
    ",?totale" & _
    ",?utente)"

    Dim da As New MySqlDataAdapter
    Dim cmdInsertCorpo As MySqlCommand

    ' da.UpdateCommand = cmdUpdateCorpo

    '' InsertCommand
    cmdInsertCorpo = conn.CreateCommand
    cmdInsertCorpo.CommandText = insertCorpo
    cmdInsertCorpo.Transaction = trn

    cmdInsertCorpo.Parameters.Add(New MySqlParameter("codice", MySqlDbType.Int64, 10, "codice"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("id_testa", MySqlDbType.Int64, 10)).Value = id_testa
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("cfornitore", MySqlDbType.VarChar, 6, "cfornitore"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("cproduttore", MySqlDbType.VarChar, 6, "cproduttore"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("carticolo", MySqlDbType.VarChar, 14, "carticolo"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("cvarieta", MySqlDbType.VarChar, 5, "cvarieta"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("cmisura", MySqlDbType.VarChar, 5, "cmisura"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("cgrado", MySqlDbType.VarChar, 5, "cgrado"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("ctipo_imballo", MySqlDbType.VarChar, 5, "cimballo"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("quantita_box", MySqlDbType.Int64, 10, "quantitabox"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("quantita_um_x_box", MySqlDbType.Int64, 10, "quantitaumxbox"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("quantita_um", MySqlDbType.Int64, 10, "quantitaum"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("data_consegna", MySqlDbType.Date, 10, "dataconsegna"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("cluogo_arrivo", MySqlDbType.VarChar, 5, "cluogoarrivo"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("ccliente_fornitore", MySqlDbType.VarChar, 6, "ccliente_fornitore"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("prezzo_unitario", MySqlDbType.Double, 10, "prezzounitario"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("sconto", MySqlDbType.Double, 5, "sconto"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("totale", MySqlDbType.Double, 10, "prezzo"))
    cmdInsertCorpo.Parameters.Add(New MySqlParameter("utente", MySqlDbType.VarChar, 10)).Value = (User.Identity.Name).Substring(0, (User.Identity.Name).IndexOf(":"))

    da.InsertCommand = cmdInsertCorpo

    da.Update(dt)
    End Sub

    Purtroppo lo so... è un pò lunga... e oltretutto ho eliminato la parte degli Update.
    La cosa strana che dopo l'assegnazione del dt se vado a vedere i singoli valori ci sono...e sono corretti.
    Dopo averli assegnati al cmdInsertCorpo se vado a controllare il dataadapter i vari parametri risultano vuoi.
    Come mai?

  2. #2
    weppos non è in linea Scolaretto
    Luogo
    Italy
    Post
    401
    Che brutta query. [img]smileys/smiley19.gif[/img]
    Usa una query di UPDATE in puro SQL. [img]smileys/smiley1.gif[/img]

+ Rispondi al Thread

Discussioni simili

  1. [ACCESS] UPDATE tabella con VBA
    Da The Gang nel forum Access
    Risposte: 2
    Ultimo Post: 05-10-2006, 16:32
  2. [Access]Update multipla
    Da Vanessa nel forum Access
    Risposte: 1
    Ultimo Post: 10-03-2006, 19:34

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi