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

    [VB 2010 Win Form - Access] Lettura e scrittura in un database access 2007

    Ciao a tutti,

    sto cercando di capire come funziona VB 2010 con access 2007, e ci sto sbattendo la testa da un paio di giorni...

    A livello di studio ho creato un semplice progetto composto da una Form con un unico bottone.
    Lo scopo del progetto è fare in modo che alla pressione del bottone, venga inserito un nome e cognome nella tabella rubrica del mio database access 2007.

    Riesco ad effettuare la connessione al db. Ma non riesco a far funzionare l'inserimento dei dati (mi da sempre un errore: "Sequenza di ordinamento selezionata non supportata dal sistema operativo." )

    Ecco qui il codice che utilizzo:


    codice:
    Imports System.Data.OleDb
    
    Public Class Form1
    
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    
        End Sub
    
        Private Sub Collegadb()
            Dim connessione As OleDbConnection
            Dim stringaconn As String
            Dim stringasql As String
            Dim comando As OleDbCommand
    
            Dim Nome As String = "Mario"
            Dim Cognome As String = "Rossi"
    
            Dim dbpath As String = System.Environment.CurrentDirectory.ToString & "\db_prova.accdb"
    
            stringaconn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="
            stringaconn = stringaconn & dbpath
            stringaconn = stringaconn & ";Persist Security Info=False;"
    
            connessione = New OleDbConnection(stringaconn)
    
    
            stringasql = "INSERT INTO rubrica(Nome_Utente, Cognome_Utente) VALUES('" & Nome & "','" & Cognome & "')"
    
    
    
            comando = New OleDbCommand(stringasql, connessione)
    
            connessione.Open()
    
            comando.ExecuteNonQuery()
    
            connessione.Close()
    
    
        End Sub
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Collegadb()
        End Sub
    
    End Class


    qualche suggerimento? dove sbaglio?
    «Nella mia carriera ho sbagliato più di novemila tiri. Ho perso quasi trecento partite. Ventisei volte i miei compagni mi hanno affidato il tiro decisivo e l'ho sbagliato. Nella vita ho fallito molte volte. Ed è per questo che alla fine ho vinto tutto» - Michael Jordan

    «Prima ti ignorano, poi ti deridono, poi ti combattono. Poi vinci.» - Gandhi

  2. #2
    Non sono ancora arrivato a provare a leggere il contenuto, perchè per ora manco riesco a scriverci dentro

    Se qualcuno fosse così gentile da spiegarmi come si fa a creare un recordset con una query tipo SELECT * FROM rubrica WHERE nome = 'mario'

    mi farebbe un piacerone! purtroppo mi sto perdendo in un bicchier d'acqua ma prioprio non ne vengo fuori!
    «Nella mia carriera ho sbagliato più di novemila tiri. Ho perso quasi trecento partite. Ventisei volte i miei compagni mi hanno affidato il tiro decisivo e l'ho sbagliato. Nella vita ho fallito molte volte. Ed è per questo che alla fine ho vinto tutto» - Michael Jordan

    «Prima ti ignorano, poi ti deridono, poi ti combattono. Poi vinci.» - Gandhi

  3. #3
    Ho notato che il problema non si presenta, e il codice che ho postato qui sopra funziona benissimo, se al posto di usare Access 2007 converto il db in Access 2003

    Sembrerebbe che Microsoft non sia perfettamente compatibile con... se stessa!
    «Nella mia carriera ho sbagliato più di novemila tiri. Ho perso quasi trecento partite. Ventisei volte i miei compagni mi hanno affidato il tiro decisivo e l'ho sbagliato. Nella vita ho fallito molte volte. Ed è per questo che alla fine ho vinto tutto» - Michael Jordan

    «Prima ti ignorano, poi ti deridono, poi ti combattono. Poi vinci.» - Gandhi

  4. #4
    Sembrerebbe un problema derivante dalla lingua di base del database. Prova a leggere qui:


    P.S. ti ho editato il primo post e aggiunto i tag CODE /CODE per formattare il codice. Ti invito a non dimenticartene la prossima volta che posti codice.
    Chi non cerca trova.

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    200
    io ti consiglio di usare il linguaggio universale di tutti i database del globo, l'SQL.
    quindi la tua query diventa questa:

    "INSERT INTO rubrica SET Nome_Utente = '" & Nome & "', Cognome_Utente = '" & Cognome & "'"

  6. #6
    Originariamente inviato da foffo7
    io ti consiglio di usare il linguaggio universale di tutti i database del globo, l'SQL.
    quindi la tua query diventa questa:

    "INSERT INTO rubrica SET Nome_Utente = '" & Nome & "', Cognome_Utente = '" & Cognome & "'"
    Non mi risulta che quella che hai indicato sia la sintassi giusta per l'INSERT:
    http://www.w3schools.com/sql/sql_insert.asp

    Piuttosto, quella è la sintassi del UPDATE:
    http://www.w3schools.com/sql/sql_update.asp
    Chi non cerca trova.

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    200
    no per l'UPDATE ci sarebbe voluto il WHERE alla fine, questa è per l'INSERT. è simile perciò è semplice questo linguaggio.
    Quella che hai indicato tu è la vecchia versione della sintassi ora è stata rivisitata

  8. #8
    Scusa se dissento ma l'istruzione INSERT prevede questa sintassi, che riporto dal link specificato prima:
    codice:
    INSERT INTO table_name (column1, column2, column3,...)
    VALUES (value1, value2, value3,...)
    Chi non cerca trova.

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    200
    Ed io ripeto.. questa sintassi si usava circa 10 anni fa, ora per semplificare le cose è stata rivisitata ed è stata inserita anche questa possibilità, che io personalmente trovo più comoda.

  10. #10
    Ok, ma qualche link?

    Qui dicono la stessa cosa che dico io:
    http://en.wikipedia.org/wiki/Insert_(SQL)
    Chi non cerca trova.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.