[VB Express]: Salvare i dati in un DB SQL Server Locale

di Anonimizzato4038 il
32 risposte
Ciao a tutti,

ho trovato il forum e mi sembra un insieme di persone molto competenti in ambito programmazione.
Ho deciso di riprendere in mano il visual basic (non lo usavo da 6 anni!) e ho scaricato la versione express dal sito microsoft. Ho cominciato a smanettare un pochino e ad abituarmi alle differenze. Il problema con cui mi sono scontrato è questo: ho creato un DB con SQL Server Express in locale, in cui è contenuta una tabella TblCliente, ci ho inserito due record e fin qui tutto regolare. Ho creato poi un form con i campi da compilare per salvare i dati nel DB. Riesco a scorrere i due record che ho inserito manualmente. Se però aggiungo dei nuovi dati e clicco sul pulsante salvataggio rimangono memorizzati fintanto che non chiudo l'applicazione per tornare alla progettazione. Nel pulsante salva ho inserito questa porzione di codice:

try
me.validate()
me.tblclientetableadapter.update(me.videonoleggiodataset.tblcliente)
me.tblclientebindingsource.endedit()
msgbox("ok")
catch as exception
msgbox("errore")
end try

Se ci clicco sopra mi dice ok e i dati efettivamente ci sono, ma vengono cancellati non appena chiudo l'applicazione. Qualcuno di voi mi sa dire dove sbaglio?

32 Risposte

  • Non ho mai usato SQL Server, però dato il problema, non potrebbe essere che non sia impostato nel dbms il commit automatico?

    Per verificare ciò, dopo l'istruzione sql della insert, metti un commit e guarda se il problema si verifica ancora oppure guarda nel dbms se è presente questa opzione, cioè del commit automatico
  • Ciao,

    non so bene cosa sia il commit automatico, comunque ho messo un post nella sezione SQL.
    Mi sai dare qualche indicazione?
  • Nel pulsante salva ho inserito questa porzione di codice:

    try
    me.validate()
    me.tblclientetableadapter.update(me.videonoleggiodataset.tblcliente)
    me.tblclientebindingsource.endedit()
    msgbox("ok")
    catch as exception
    msgbox("errore")
    end try

    Se ci clicco sopra mi dice ok e i dati efettivamente ci sono, ma vengono cancellati non appena chiudo l'applicazione. Qualcuno di voi mi sa dire dove sbaglio?[/quote]

    scusami un pò, ma vedi se ci sono service pack di visual 2005, può darsi che ci sono problemi relativi al salvataggio DB SQL Server Locale...
  • snake993 ha scritto:



    scusami un pò, ma vedi se ci sono service pack di visual 2005, può darsi che ci sono problemi relativi al salvataggio DB SQL Server Locale...
    Ma il codice quindi è corretto?

    --- EDIT ---
    C'è l'aggiornamento a framework 3.0. Può risolvere?

    --- EDIT 2 ---
    Aggiornato a framework 3.0 ma non è cambiato nulla.

    --- EDIT 3 ---
    Trovato il SP1 per visual basic express (32,3 MB). Lo installo e poi vi faccio sapere se i problemi si sono risolti. Speriamo!!!!
  • Niente da fare. L'errore continua imperterrito. Vi posto tutto il codice che ho messo nell'unico form che ho:

    Public Class Form1

    Private Sub TblClienteBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TblClienteBindingNavigatorSaveItem.Click
    Try
    Me.Validate()
    Me.TblClienteTableAdapter.Update(Me.Database1DataSet.tblCliente)
    Me.TblClienteBindingSource.EndEdit()
    MsgBox("ok")
    Catch
    MsgBox("errore")
    End Try
    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 'Database1DataSet.tblFilm'. È possibile spostarla o rimuoverla se necessario.
    Me.TblFilmTableAdapter.Fill(Me.Database1DataSet.tblFilm)
    'TODO: questa riga di codice carica i dati nella tabella 'Database1DataSet.tblCliente'. È possibile spostarla o rimuoverla se necessario.
    Me.TblClienteTableAdapter.Fill(Me.Database1DataSet.tblCliente)
    Me.TblClienteBindingSource.AddNew()
    End Sub
    End Class
  • Ma non è che dipende dal fatto che si tratta di visual basic express che non funziona?
  • Può darsi xkè windows ha ben 2 service pack e + di 300 aggiornamenti.. cmq grazie x framework 3.0 nn cè lo .....adesso lo scarico
  • Ma allora come faccio? E poi perchè c'è il supporto DB se non mi ci posso interfacciare?
  • Nn so dirti nulla...
    inviami il tuo lavoro alla mia e-mail

    o al mio msn se ti va di chattare e spiegarmi tutto x bene


    se il tuo lavoro supera i 20 mb, inviami il tutto alla-emali di yahoo.....
    spero che il tutto si risolva...

    ciao
  • Ok, inviato tutto. Appena hai tempo di darci un occhio dimmi dove sbaglio, perchè questo è sicuramente un errore umano (cioè mio!)
  • Hotrovato un SP2 di SQL Express. Installo anche quello! Tanto ormai...

    --- EDIT ---

    Nisba! Niente! Nada de nada! Anche con la patch non cambia nulla.
  • Grazie
  • Grazie a te che dai un occhio al mio codice
  • Ho idea di aver postato nel periodo sbagliato. Tutti i programmatori si stanno implementando la sub ferie....
Devi accedere o registrarti per scrivere nel forum
32 risposte