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
App. WinForms / WPF .NET
[Visual Basic 2005] problema con pulsante salva dati database
venerdì 20 luglio 2007 - 21.35
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
platino
Profilo
| Junior Member
82
messaggi | Data Invio:
ven 20 lug 2007 - 21:35
Salve a tutto il forum
Mi sono iscritto xké è da una settimana +/- ke cerco di risolvere questo problma.
Allora... Sto creando un programma in Visual Basic 2005 (uso visual studio 2005) che ho collegato a una sorgente dati, ke è un database di access kiamato Database1111.mdb.
Quando vado a premere il pulsante salva ke mi viene creato in automatico (in seguito al collegamento al database), se aggiungo un record, ok; se lo modifico o se lo elimino...errore.
Mi si seleziona una riga di codice e mi dice ke ci voule un datarow valido.
Ho provato a cambiare il codice con "AcceptChanges" e altri codici, ma niente.
Quello ke vi kiedo è un aiuto nel far funzionare il pulsante salva dati.
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 20 lug 2007 - 21:42
Potresti essere un po' più preciso...?
puoi postare il codice della routine di salvataggio?
Ciao
platino
Profilo
| Junior Member
82
messaggi | Data Invio:
ven 20 lug 2007 - 21:43
Public Class Form1
Private Sub Foglio1BindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Foglio1BindingNavigatorSaveItem.Click
Me.Validate()
Me.Foglio1BindingSource.EndEdit()
Me.Database1111DataSet.AcceptChanges()
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'TODO: questa riga di codice carica i dati nella tabella 'Database1111DataSet.Foglio1'. È possibile spostarla o rimuoverla se necessario.
Me.Foglio1TableAdapter.Fill(Me.Database1111DataSet.Foglio1)
End Sub
End Class
_____platino_____
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 20 lug 2007 - 22:01
In pratica hai fatto tutto con il Wizard.
In passato mi sono scontrato anch'io con questo problema.
Per prima cosa devi verificare che la tabella del database a cui ti colleghi sia dotata di chiave primaria.
Inoltre il Datasource non deve essere rappresentato da un Join di più tabelle.
...
Verifica e fammi sapere.
Ciao
platino
Profilo
| Junior Member
82
messaggi | Data Invio:
ven 20 lug 2007 - 22:19
scusa l'ignoranza, ma nn so cosa sia il join
_____platino_____
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 20 lug 2007 - 22:21
Hai controllato se esiste una chiave primaria per la tabella del database collegato?
Se sei collegato ad una sola tabella allora non ci sono problemi di join.
Attendo...
platino
Profilo
| Junior Member
82
messaggi | Data Invio:
ven 20 lug 2007 - 22:22
sì, certo ke c'è la kiave primaria
_____platino_____
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 20 lug 2007 - 22:32
Dovresti apportare delle modifiche al codice del pulsante Save:
>Private Sub Foglio1BindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles >Foglio1BindingNavigatorSaveItem.Click
>Me.Validate()
>Me.Foglio1BindingSource.EndEdit()
Fin qui va bene
>Me.Database1111DataSet.AcceptChanges()
Al posto di questa istruzione devi richiamare il metodo update del DataAdapter
Me.Foglio1TableAdapter.Update(Me.DataBase1111DataSet)
> End sub
Così dovrebbe funzionare...
Scusa se insisto, è importante che ci sia una chiave primaria impostata nella tabella, divesamente non fuonzionerà mai.
Fammi sapere, ciao
Ale
platino
Profilo
| Junior Member
82
messaggi | Data Invio:
ven 20 lug 2007 - 22:33
stai a sentire tra poco devo andare a adromire.
Io mi riconnetto domani mattina verso le 9 o le 10.
Cmq te rispondimi lo stesso e mi raccomando, non lasciare questo thread, se no potrei impazzire
P.S.: Bn Nt
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 20 lug 2007 - 22:36
Non sò se domani potrò risponderti in diretta, sarò a lavoro.
Cumunque non ti preoccupare che non abbandono il thread, ti rispondo appena posso.
Buona notte, Ciao
Ale
platino
Profilo
| Junior Member
82
messaggi | Data Invio:
ven 20 lug 2007 - 22:41
Sei un genio
Ora funziona.
Aspetta però, non scappare!!!
Ho un altro problema.
Voglio creare un pulsante e una textbox.
Quando inserisco un valore nella textbox e, dopo aver cliccato sul pulsante, mi deve venire fuori, negli appositi spazi, il valore corrispondente.
In pratica voglio creare un comando di ricerca per parole chiave nel database.
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 20 lug 2007 - 22:51
>Sei un genio
Lusingato ma credo sia un pò esagerato!
>Ora funziona.
Mi fa piacere...
>Aspetta però, non scappare!!!
>Ho un altro problema.
>Voglio creare un pulsante e una textbox.
>Quando inserisco un valore nella textbox e, dopo aver cliccato sul pulsante, mi deve venire fuori, negli appositi spazi, il valore >corrispondente.
>In pratica voglio creare un comando di ricerca per parole chiave nel database.
Provo un attimo e arrivo...
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 20 lug 2007 - 22:58
Allora...
poniamo che tu crei una textbox che chiameremo TxtRicerca e un pulsante che chiameremo CmdRicerca.
All'evento click del pulsante dovrai inserire questo codice:
Me.Foglio1BindingSource.Position = Me.Foglio1BindingSource.Find("NOMECAMPO", Me.TxtRicerca.Text)
Attenzione, dove ho scritto nome campo dovrai inserire il nome del campo del database su cui vuoi effettuare la ricerca.
In sintesi questa operazione imposta la proprietà Position del BindingSource all'indice ottenuto dal metodo find dello stesso BindingSource che accetta come parametri il campo di riferimento e la stringa da ricercare (che l'utente inserirà nella textbox).
Fammi sapere se funzia.
Ciao
Ale
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
ven 20 lug 2007 - 23:16
Precisazione!
Questa funzionalità effettua una ricerca per testo esatto e non funziona con i caratteri jolly.
Se devi effettuare una ricerca avanzate per parte del testo contenuto dovrai utilizzare la proprietà Filter del BindingManager:
' Imposta il filtro con i caratteri jolly %
Me.Foglio1BindingSource.Filter = "NOMECAMPO Like '%" + Me.TxtRicerca.Text + "%'"
' Forza un refresh del BindingManager
Me.TESTBindingSource.Position = Me.TESTBindingSource.Count
Me.TESTBindingSource.Position = 0
Prova anche questo... ciao
Ale
platino
Profilo
| Junior Member
82
messaggi | Data Invio:
sab 21 lug 2007 - 09:29
6 L'UNICA PERSONA KE è RIUSCITA A RISOLVERE IL MIO PROBLEMA. 6 UN GENIO
PER ORA HAI RSOLTO I MIEI PROBLMEI E...NON LASCIARE MAI QUESTO FORUM XKé SE MI CAPITA DI AVERE ALTRI PROBLEMI DEL GENERE, CONTERò SU DI TE.
P.S.: SONO SICURO KE LAVORI ALLA MICROSOFT
_____platino_____
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
sab 21 lug 2007 - 11:07
E' stato un piacere.
Ciao
Alessandro
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
sab 21 lug 2007 - 11:09
Se puoi clicca su Accetta risposta così chiudiamo il thread.
Ciao
Ale
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 !