|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jan 2004
Città: Verolavecchia
Messaggi: 198
|
[VB] inserire dati in un database
per inserire dati in un database ho pensato di fare una form, e mettere diverse textbox che corrispondono ai campi del database, poi ho messo un command button che ho chiamato inserisci.
Ad esempio: c'è il campo nome e quando clicco inserisci il nome che ho inserito deve essere memorizzato nel database. Qualcuno sa come posso fare??? |
|
|
|
|
|
#2 |
|
Member
Iscritto dal: Jan 2004
Città: Verolavecchia
Messaggi: 198
|
nessun programmatore professional di visual basic mi può dare una mano???
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Mar 2003
Città: Genova
Messaggi: 4330
|
Devi usare ado o dao
__________________
.::. Steam: ~Blissard~ .::. Origin: Blissard79 .::. BNet: Blissard#2740 .::. |
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Jan 2004
Città: Verolavecchia
Messaggi: 198
|
si, ma purtroppo non essendo molto ferrati col VB non capisco come devo fare per far si che ad esempio quello che inserisco nel textbox1 sia inserito nel campo nome della mia tabella, quello del textbox2 nel cognome e così via.
se qualcuno sa come posso fare... |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2004
Città: Lariano (RM)
Messaggi: 1372
|
Mi aspettavo questa tua richiesta
E' legata sempre allo stesso programma? Per scrivere dati in una tabella del database devi usare l'istruzione SQL: INSERT INTO... dandola in pasto alla funzione Execute della connessione. Quindi... sSQL="INSERT INTO NOME_TABELLA VALUES(' " & Nome_TextBox1.Text & " ',' " & Nome_TextBox2.Text & " ')" dbConn.Execute sSQL L'istruzione SQL scritta sopra serve per inserire tutti i campi nella tabella, se devi inserire soltanto alcuni campi va leggermente modificata. Lo spazio tra l'apice singolo e il doppio va eliminato, ce l'ho messo soltanto per farti capire come stanno messi. Riproducendo la struttura sopra puoi inserire tante TextBox quanti sono i campi. Se in qualcuna delle TextBox invece di una stringa c'è un valore numerico devi togliere gli apici singoli dall'estremità della TextBox interessata.
__________________
Careful With That Axe Ultima modifica di Brigante : 30-03-2005 alle 15:01. |
|
|
|
|
|
#6 |
|
Member
Iscritto dal: Jan 2004
Città: Verolavecchia
Messaggi: 198
|
be si, è tutto legato allo stesso programma, ma devo dire che grazie al vostro aiuto sto imparando moltissimo.
Ora ho un problema con il codice (ho tolto gli apici singoli dove devo inserire solo numeri) Ecco il mio codice: sSQL = "INSERT INTO Tabella1 VALUES(" & Text1.Text & "," & Text2.Text & ",'" & Text2.Text & "','" & Text3.Text & "','" & Text4.Text & "','" & Text5.Text & "'," & Text6.Text & ",'" & Text7.Text & "')" dbConn.Execute sSQL e mi da il seguente errore: Errore di compilazione: non valido all'esterno di una routine e mi evidenzia questo pezzo: "INSERT INTO Tabella1 VALUES(" |
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Apr 2004
Città: Lariano (RM)
Messaggi: 1372
|
Quote:
Private Sub ScriviRecord() sSQL = "INSERT INTO Tabella1 VALUES(" & Text1.Text & "," & Text2.Text & ",'" & Text2.Text & "','" & Text3.Text & "','" & Text4.Text & "','" & Text5.Text & "'," & Text6.Text & ",'" & Text7.Text & "')" dbConn.Execute sSQL End Sub Scrivendola così però è una soluzione mooolto semplice, manca un'oppurtuna gestione degli errori. Comunque, per eseguire il codice al suo interno devi "chiamarla" scrivendo il suo nome dopo l'istruzione Call, cioè: Call ScriviRecord.
__________________
Careful With That Axe Ultima modifica di Brigante : 30-03-2005 alle 16:55. |
|
|
|
|
|
|
#8 |
|
Member
Iscritto dal: Jan 2004
Città: Verolavecchia
Messaggi: 198
|
non è che magari devo mettere quel codice dentro questo???
Private Sub Command1_Click() End Sub perchè nella form ho messo due pulsanti, uno deve annullare e l'altro deve inserire quello che ho scritto nel database... ... forse sto sbagliando tutto???? |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Apr 2004
Città: Lariano (RM)
Messaggi: 1372
|
Quote:
__________________
Careful With That Axe |
|
|
|
|
|
|
#10 |
|
Member
Iscritto dal: Jan 2004
Città: Verolavecchia
Messaggi: 198
|
ed invece
Call ScriviRecord dove lo devo mettere??? |
|
|
|
|
|
#12 |
|
Member
Iscritto dal: Jan 2004
Città: Verolavecchia
Messaggi: 198
|
allora ho fatto:
Private Sub ScriviRecord() sSQL = "INSERT INTO Tabella1 VALUES(" & Text1.Text & "," & Text2.Text & ",'" & Text2.Text & "','" & Text3.Text & "','" & Text4.Text & "','" & Text5.Text & "'," & Text6.Text & ",'" & Text7.Text & "')" dbConn.Execute sSQL End Sub Private Sub Command1_Click() Call ScriviRecord End Sub Però mi da errore Errore di run-time '424': necessario oggetto |
|
|
|
|
|
#13 | |
|
Senior Member
Iscritto dal: Apr 2004
Città: Lariano (RM)
Messaggi: 1372
|
Quote:
__________________
Careful With That Axe |
|
|
|
|
|
|
#14 |
|
Member
Iscritto dal: Jan 2004
Città: Verolavecchia
Messaggi: 198
|
anche se sostituisco mi da lo stesso errore di prima
|
|
|
|
|
|
#15 | |
|
Senior Member
Iscritto dal: Apr 2004
Città: Lariano (RM)
Messaggi: 1372
|
Quote:
__________________
Careful With That Axe |
|
|
|
|
|
|
#17 |
|
Member
Iscritto dal: Jan 2004
Città: Verolavecchia
Messaggi: 198
|
anche se scrivo solo ScriviRecord al posto di Call ScriviRecord mi da sempre lo stesso errore:
necessario oggetto |
|
|
|
|
|
#18 | |
|
Senior Member
Iscritto dal: Sep 2001
Città: Lugagnano di Sona (Verona)
Messaggi: 382
|
Quote:
__________________
my site |
|
|
|
|
|
|
#19 |
|
Member
Iscritto dal: Jan 2004
Città: Verolavecchia
Messaggi: 198
|
nel mio pezzo di codice:
Private Sub ScriviRecord() sSQL = "INSERT INTO Tabella1 VALUES(" & Text1.Text & "," & Text2.Text & ",'" & Text2.Text & "','" & Text3.Text & "','" & Text4.Text & "','" & Text5.Text & "'," & Text6.Text & ",'" & Text7.Text & "')" db.Execute sSQL End Sub il debug si ferma qui: db.Execute sSQL |
|
|
|
|
|
#20 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Quote:
>EDIT<
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
Ultima modifica di RaouL_BennetH : 03-04-2005 alle 19:27. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:30.



















