Salve a tutti


Ho un controllo datagrid e nell'evento UpdateCommand il seguente codice:
codice:
  Dim username As String = e.Item.Cells(1).Text
        Dim password As String = CType(e.Item.Cells(2).Controls(0), TextBox).Text
        Dim livello As String = CType(e.Item.Cells(3).Controls(0), TextBox).Text
        Dim sqlquery As String

        Dim conn2 As OleDbConnection = genericFunction.ConnettiDb
        'query di aggiornamento
        sqlquery = String.Format("update members set password='{0}', livello={1} where username='{2}'", password, livello, username)
        Dim excmd As New OleDbCommand(sqlquery, conn2)
        excmd.ExecuteNonQuery()
        Response.Write(sqlquery)
        conn2.Close()

        DGUtenti.EditItemIndex = -1
        DGUtenti.DataSource = dr2
        DGUtenti.DataBind()
Quando lo mando in esecuzione mi ritorna un errore:
System.Data.OleDb.OleDbException: Errore di sintassi nell'istruzione UPDATE.

eppure la query che dovrebbe processare è semplicissima
codice:
update members set password='nuovapass', livello=0 where username='admin'
Da che dipende?

Avrei anche un altra domanda. Come si vede dal codice ho dovuto mettere aprire un altra connessione per effettuare la query... E' possibile evitare l'apertura e chiusura di molteplici connessioni e quindi utilizzare un unica connessione aperta al page_load e chiusa al page_unload?

grazie