Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    eliminare un record passando + parametri [oledb]

    per inserire dei valori in un db access la stringa di comando da usare è insert into Tabella (campo1, campo2,campo3) values ( ?,?,?)
    cmdInsert.Parameters.Add( "@campo1", txtCampo1.text )
    cmdInsert.Parameters.Add( "@campo2", txtCampo2.text )
    cmdInsert.Parameters.Add( "@campo3", txtCampo3.text )

    ...fin qui ok...
    ma per cancellare un record da un db access passandogli 3 parametri come faccio?
    non ne ho proprio idea :di56:
    -pigiuz-
    "se proprio deve piovere merda voglio almeno sapere da che parte tira il vento" Robert Redford - Spy Game

  2. #2
    Utente di HTML.it L'avatar di Joe Taras
    Registrato dal
    Nov 2003
    residenza
    Taranto
    Messaggi
    955

    Re: eliminare un record passando + parametri [oledb]

    Originariamente inviato da pigiuz
    per inserire dei valori in un db access la stringa di comando da usare è insert into Tabella (campo1, campo2,campo3) values ( ?,?,?)
    cmdInsert.Parameters.Add( "@campo1", txtCampo1.text )
    cmdInsert.Parameters.Add( "@campo2", txtCampo2.text )
    cmdInsert.Parameters.Add( "@campo3", txtCampo3.text )

    ...fin qui ok...
    ma per cancellare un record da un db access passandogli 3 parametri come faccio?
    non ne ho proprio idea :di56:
    E se utilizzi il comando SQL DELETE parametrizzando il valore dei campi da cancellare?

  3. #3
    l'idea era quella
    il fatto è che non so come realizzarla!

    se faccio

    strDelete = "delete from tabella where campo1=? campo2=? campo3=?"
    cmdDelete = new OleDbCommand (strDelete, connessione)
    cmdDelete.parameters.add("@campo1", txtCampo1.text)
    cmdDelete.parameters.add("@campo2", txtCampo2.text)
    cmdDelete.parameters.add("@campo3", txtCampo3.text)

    mi da errore
    -pigiuz-
    "se proprio deve piovere merda voglio almeno sapere da che parte tira il vento" Robert Redford - Spy Game

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da pigiuz
    l'idea era quella
    il fatto è che non so come realizzarla!

    se faccio

    strDelete = "delete from tabella where campo1=? campo2=? campo3=?"
    cmdDelete = new OleDbCommand (strDelete, connessione)
    cmdDelete.parameters.add("@campo1", txtCampo1.text)
    cmdDelete.parameters.add("@campo2", txtCampo2.text)
    cmdDelete.parameters.add("@campo3", txtCampo3.text)

    mi da errore
    codice:
    strDelete = "DELETE FROM <tabella> WHERE CAMPO1=? AND CAMPO2=?..."
    connessione = new OleDbConnection(StringaConnessione)
    Connessione.Open()
    Transazione = Connessione.BeginTransaction()
    Comando = new OleDbCommand(strDelete, Connessione, Transazione)
    
    Parametro = New OleDbParameter("campo1", OleDbType.Varchar, 50)
    Parametro.Value = "prova"
    Comando.Parameters.Add(parametro)
    .
    .
    .
    Comando.ExecuteNonQuery()
    Transazione.Commit()

  5. #5
    Mancano gli AND all'interno della where
    codice:
    strDelete = "delete from tabella where campo1=? AND campo2=? AND campo3=?"

  6. #6
    tanto per sapere...perchè dovrei fare una transizione? :master:
    -pigiuz-
    "se proprio deve piovere merda voglio almeno sapere da che parte tira il vento" Robert Redford - Spy Game

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da pigiuz
    tanto per sapere...perchè dovrei fare una transizione? :master:
    Il mio era solo un esempio, da prendere come tale. La transazione serve solo quando serve.

  8. #8
    EH NNO!
    HO FATTO TUTTO! TUTTAVIA...non funziona!

    codice:
    sub btnClick_Elimina(s as Object, e as EventArgs)
    Dim conCiccio As OleDbConnection
    Dim strDelete As String
    Dim cmdDelete As OleDbCommand
    conCiccio = New OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source="& Server.MapPath("mdb-database\ciccio.mdb") )
    strDelete = "DELETE FROM Tabella1 WHERE ID=?"
    cmdDelete = New OleDbCommand( strDelete, conCiccio )
    cmdDelete.Parameters.Add( "@ID", txtDelete.text )
    conCiccio.Open()
    cmdDelete.ExecuteNonQuery()
    conCiccio.Close()
    end sub
    ora, quello che non capisco è: DOV'E' L'ERRORE?
    dire che sono demoralizzato è sminuente...
    -pigiuz-
    "se proprio deve piovere merda voglio almeno sapere da che parte tira il vento" Robert Redford - Spy Game

  9. #9
    Vista cosi sembra giusta :master:
    ma ti dà qualche errore? se si quale?

  10. #10
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Anche a me sembra giusta. Però ricordo che, facendo prove passando il nome ed il valore al metodo Parameters.Add del comando, non mi funzionava.
    Ti suggerisco o di utilizzare il costruttore dell'oggetto Parameter, o utilizzare il metodo CreateParameter dell'oggetto Command

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.