Inserimento dati in database .mdb

di il
4 risposte

Inserimento dati in database .mdb

Buongiorno,
sto incontrando qualche problema nel seguente codice, la tabella la crea ma quando va per inserire i dati va in errore e compare la msgbox "Errore nell'inserimento dei dati.".
qualcuno mi può aiutare?
grazie in anticipo
If DBaccess.Exists = False Then
'Crea Nuovo DataBase se non esiste
DBconn.Create("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + percorso + ";" + "Jet OLEDB:Engine Type=5")
End If
Try
Dim DBquery As New OleDb.OleDbCommand("CREATE TABLE [" & DBtable & "] ([nome] TEXT(15), [cognome] TEXT(10), [indirizzo] TEXT(7), [citta] TEXT(255), [cap] TEXT(255), [telefono] TEXT(255), [provincia] TEXT(2), [datanascita] TEXT(10), [luogonascita] TEXT(5), [nazionalita] TEXT(5), [altezza] TEXT(255), [peso] TEXT(255), [note] TEXT(5))", conn)
conn.Open()
DBquery.ExecuteNonQuery()
conn.Close()
Catch ex As Exception
conn.Close()
MsgBox("Errore nel creare la tabella.")
End Try
Dim DBinserimento As String
DBinserimento = "INSERT INTO [" & DBtable & "]([nome], [cognome], [indirizzo], [citta], [cap], [telefono], [provincia], [datanascita], [luogonascita], [nazionalita], [altezza], [peso], [note]) VALUES ([" & nome & "], [" & cognome & "], [" & indirizzo & "], [" & citta & "], [" & cap & "], [" & telefono & "], [" & prov & "], [" & datanascita & "], [" & luogonascita & "], [" & nazionalita & "], [" & altezza & "], [" & peso & "], [" & note & "])"
Try
Dim DBqueryins As New OleDb.OleDbCommand(DBinserimento, conn)
conn.Open()
DBqueryins.ExecuteNonQuery()
conn.Close()
Catch ex As Exception
conn.Close()
MsgBox("Errore nell'inserimento dei dati.")
End Try

4 Risposte

  • Re: Inserimento dati in database .mdb

    Devi mostrare il messaggio dell'eccezione, analizza la variabile ex in debug

    Oppure elimina temporaneamente la try catch e vedi l'esatto messaggio d'errore
  • Re: Inserimento dati in database .mdb

    Mi da questo errore:
    DBqueryins.ExecuteNonQuery()
    System.Data.OleDb.OleDbException: 'Nessun valore specificato per alcuni parametri necessari.'
  • Re: Inserimento dati in database .mdb

    Quindi devi rivedere la stringa con i campi e i dati.

    Ti consiglio di NON usare questa stringa ma i Paramters proprio per evitare questi problemi.
  • Re: Inserimento dati in database .mdb

    Oltre ai parametri, io rivedrei anche la creazione della tabella, perché non ha alcun senso, ed è assolutamente sbagliato, usare tutti campi TEXT; a quanto pare senza nemmeno una chiave primaria!!!

    Il tipo di campo va scelto in base al tipo di dato che deve contenere, altrimenti in futuro avrai rogne a non finire, rogne che non saranno superabili in alcun modo. Non è un optional.
Devi accedere o registrarti per scrivere nel forum
4 risposte