Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 1.0/1.1
Non riesco ad inserire una riga in una tabella di un database ACCESS (...
venerdì 02 luglio 2004 - 16.19
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
gigimix
Profilo
| Newbie
36
messaggi | Data Invio:
ven 2 lug 2004 - 16:19
Lerrore che mi viene restituito è: Errore di sintassi nellistruzione INSERT INTO.
Ho provato sia con il CommandBuilder che con unistruzione SQL ad hoc, ma lerrore è sempre lo stesso.
Ecco cosa ho fatto:
Ho la necessità di leggere 2 tabelle da un DB Access e lo faccio con: "SELECT * FROM Eventi order by DataInizio DESC" e con "SELECT * FROM Eventi_ECM order by DataInizio DESC".
I risultati li metto in omonime tabelle di un DataSet: adapter.fill(dataset, Eventi) e adapter.fill(dataset, Eventi_ECM)
Tutto ok con le letture e la relativa visualizzazione in un DataGrid.
Adesso ho preparato un Form per linserimento di una nuova riga per la tabella Eventi, quindi alla pressione del Button Inserisci, creo una nuova Row, riempio le colonne della nuova riga con i valori delle txtbox del form di inserimento, aggiungo la Row alla tabella nel DataSet e faccio lupdate delladapter ed ecco lerrore.
Mettendo un punto di interruzione prima del comado Update, ho potuto estrarre listruzione SQL creata dal CommandBuilder: "INSERT INTO Eventi( TitoloCorso , Posti , Destinatario , Edizioni , DataInizio , DataFine , DateCorso , SedeCorso , Mod_Iscrizione , Accr_ECM , Note , Tipo , Tassa_Iscrizione ) VALUES ( ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? )".
Le colonne ci sono tutte meno IDRecord che è una chiave primaria autoincrementante e ho pensato che lerrore fosse li infatti nella versione manuale del comando SQL aggiungo il campo, ma sempre errore.
Sono alle prime armi ok, maaaaaa bhoooo, AIUTO!
Vi incollo il codice per la lettura dal DB e quello per lisert.
'pressione del tasto visualizza Eventi
Private Sub btnEventi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEventi.Click
If Session("tasto") = "Progetti Formativi Aziendali" Then 'se si arriva dalla visualizzazione di pfa, azzero i contatori del datagrid
dgEventiEcm.SelectedIndex = -1 'deseleziona eventuali righe nel datagrid che visualizza gli eventi
dgEventiEcm.CurrentPageIndex = 0 'azzera il valore del paginatore
End If
allButtonWhite()
Me.btnEventi.BackColor = System.Drawing.Color.Transparent
Me.btnModEventi.Visible = False
Session("tasto") = "Eventi"
dgEventiEcm.SelectedIndex = -1 deseleziona riga dal datagrid
AllCenterPannelsClose()
Me.PanCmd.Visible = True
panEventi.Visible = True
If Not ds.Tables.Contains("Eventi") Then 'se il dataset non contiene la tabella eventi
panEventi.Visible = True
Dim queryString As String = "SELECT * FROM Eventi order by DataInizio DESC"
adapter.SelectCommand = New OleDbCommand(queryString, connessione)
adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
adapter.Fill(ds, "Eventi")
dgEventiEcm.DataSource = ds.Tables("Eventi")
dgEventiEcm.DataBind()
Else
' se la tabella Eventi nel dataset esiste
panEventi.Visible = True
dgEventiEcm.DataSource = ds.Tables("Eventi")
dgEventiEcm.DataBind()
End If
End Sub
La variabile connessione è definita fuori dalla sub ed è una oledbconnection contenente il percorso del database.
La variabile adapter è definita fuori dalla sub.
'pressione tasto INSERISCI nel form NUOVO EVENTO
Private Sub btnInserisci_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnInserisci.Click
If Me.rblSelDestinazione.SelectedIndex = 0 Then 'inserimento riga in tabella EVENTI(controlla un radiobuttonlist)
Dim cmdBuild As New OleDbCommandBuilder(adapter)
Dim EventiRow As DataRow = ds.Tables("Eventi").NewRow() 'crea una nuova riga tipo tabella EVENTI
EventiRow("TitoloCorso") = Me.txbTitoloCorso.Text 'copia i dati delle text del form nelle colonne della nuova riga
Dim id as i
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !