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
Update non funziona Web Form
domenica 05 dicembre 2010 - 20.44
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
VB.NET
|
.NET 4.0
|
Windows XP
|
Visual Studio 2008
|
SQL Server Express
max1997
Profilo
| Newbie
8
messaggi | Data Invio:
dom 5 dic 2010 - 20:44
Buongiorno, non riesco a fare l'update di dati inseriti su una pagina Web dopo averli inseriti ricavandoli da una tabella id DB Sql . Svolgimento
dalla pagina iniziale ricavo il codice identità per ricercare nel DB "Label1.Text = Request.QueryString("codice")" - con una Select ricavo i dati e riempio i miei campi nel WebForm , fin qui tutto ok . Ora alcuni dei campi del WebForm possono essere modificati , con un click su un Bottone vorrei che queste modifiche venissero salvate , nessun messaggio di errore ma nulla viene salvato. Posto il codice di update , grazie per eventale help. (ho aggiunto il response write e i dati per la query mi sembrano corretti) . MR
Dim ra As Integer
sConnectionString = "Data Source=aaaa\aaaa;Initial Catalog=aaaa;User Id=aaaa; Password=aaaa;"
Dim objConn As New SqlConnection(sConnectionString)
objConn.Open()
myCommand = New SqlCommand("Update Principale Set codprg=@CodID,Chiusa=@Chiusa,@DataChiusa=DataChiusa,@UserChiusa=UserChiusa,@UserPresaCarico=UserPresaCarico,@DataPresaCarico=DataPresaCarico,@Stato=Stato,@Immagine=Immagine,@TipoStato=TipoStato Where codprg =" & Request.QueryString("codice"), objConn)
Response.Write("Update Principale Set Chiusa=@Chiusa,@DataChiusa=DataChiusa,@UserChiusa=UserChiusa,@UserPresaCarico=UserPresaCarico,@DataPresaCarico=DataPresaCarico,@Stato=Stato,@Immagine=Immagine,@TipoStato=TipoStato Where codprg =" & Request.QueryString("codice"))
Response.Flush()
myCommand.Parameters.Add(New SqlParameter("@Chiusa", SqlDbType.NChar, 1))
myCommand.Parameters("@Chiusa").Value = TextBox16.Text
myCommand.Parameters.Add(New SqlParameter("@DataChiusa", SqlDbType.DateTime, 8))
myCommand.Parameters("@DataChiusa").Value = TextBox15.Text
myCommand.Parameters.Add(New SqlParameter("@UserChiusa", SqlDbType.NVarChar, 50))
myCommand.Parameters("@UserChiusa").Value = TextBox14.Text
myCommand.Parameters.Add(New SqlParameter("@UserPresaCarico", SqlDbType.NVarChar, 50))
myCommand.Parameters("@UserPresaCarico").Value = TextBox12.Text
myCommand.Parameters.Add(New SqlParameter("@DataPresaCarico", SqlDbType.DateTime, 8))
myCommand.Parameters("@DataPresaCarico").Value = TextBox13.Text
myCommand.Parameters.Add(New SqlParameter("@Stato", SqlDbType.Int, 4))
myCommand.Parameters("@Stato").Value = TextBox21.Text
myCommand.Parameters.Add(New SqlParameter("@Immagine", SqlDbType.NVarChar, 50))
myCommand.Parameters("@Immagine").Value = TextBox20.Text
myCommand.Parameters.Add(New SqlParameter("@TipoStato", SqlDbType.NVarChar, 50))
myCommand.Parameters("@TipoStato").Value = TextBox19.Text
ra = myCommand.ExecuteNonQuery()
objConn.Close()
paoval72
Profilo
| Senior Member
297
messaggi | Data Invio:
lun 6 dic 2010 - 08:22
La prima cosa che mi viene in mente è un possibile problema sulle date. Se lanci la query dierttamente da DB, funziona o ti restituisce un errore?
Ciao,
PV
max1997
Profilo
| Newbie
8
messaggi | Data Invio:
lun 6 dic 2010 - 10:08
Grazie per la risposta , ma una query simile con il comando Insert funziona pefettamente con le date che descrivo . Piuttosto pensavo che eseguissi il codice prima o dopo il reload della pagina , per cui mi perde le informazioni e non salva nulla . non sono molto afferrato , ho letto di usare page.postback o .... Come funziona il codice da lato client a lato server ? Grazie per help
paoval72
Profilo
| Senior Member
297
messaggi | Data Invio:
lun 6 dic 2010 - 11:51
Le tue istruzioni sono tutte lato server. Al click del button, ripassa dal page_load, poi va sull'evento click, ma non perde i dati inseriti.
ma dopo l'update, sul db i dati sono aggiornati oppure restano quelli vecchi?
max1997
Profilo
| Newbie
8
messaggi | Data Invio:
lun 6 dic 2010 - 13:50
Purtroppo restano quelli vecchi . Non capisco mi sembra tutto ok eppure non aggiorna nulla.Aggiungo che ho provato a mettere un blocco sul codice all'interno della routine di update al livello
ra = myCommand.ExecuteNonQuery()
andando a leggere cosa riportano le textbox in questo momento , i dati nei campi sono quelli vecchi e non quelli appena compilati .cosa diavolo sbaglio ?Grazie per help
aabruzzese
Profilo
| Junior Member
89
messaggi | Data Invio:
mar 7 dic 2010 - 03:44
codprg=@CodID
non lo visto due volte, non ci vuole nelle due istruzione?
Angelo Abruzzese
max1997
Profilo
| Newbie
8
messaggi | Data Invio:
mar 7 dic 2010 - 11:22
Scusate ma copy and paste ho preso una riga commentata la riga giusta inserita è ("Update Principale Set Chiusa=@Chiusa,@DataChiusa=DataChiusa,@UserChiusa=UserChiusa,@UserPresaCarico=UserPresaCarico,@DataPresaCarico=DataPresaCarico,@Stato=Stato,@Immagine=Immagine,@TipoStato=TipoStato Where codprg =" & Request.QueryString("codice"))
Il problema rimane non aggiorna i dati nel DB , non ricevo segnalazioni di errori .
Ho letto un tread dove un collega aveva lo stesso problema , ma se faceva partire il pgm dal debug funzionava , succede ad altri ? non capisco il problema.
Grazie
aabruzzese
Profilo
| Junior Member
89
messaggi | Data Invio:
mar 7 dic 2010 - 14:09
Ciao,
Ai provato di modificare una colonna alla volta fina a quando vedi il update che funzione o non funzione pui?
Cosi potrai isolare il problema.
max1997
Profilo
| Newbie
8
messaggi | Data Invio:
mar 7 dic 2010 - 16:45
Salve, pensavo di aver risolto ma invece no , nel senso che l'update me lo fa solo per il campo Chiusa=@Chiusa . Ho provato anche a scambiare le posizioni ma nulla .
myCommand.Parameters.Add(New SqlParameter("@Chiusa", SqlDbType.NChar, 1))
myCommand.Parameters("@Chiusa").Value = TextBox17.Text
myCommand.Parameters.Add(New SqlParameter("@DataChiusa", SqlDbType.DateTime, 8))
myCommand.Parameters("@DataChiusa").Value = TextBox22.Text
myCommand.Parameters.Add(New SqlParameter("@UserChiusa", SqlDbType.NVarChar, 50))
myCommand.Parameters("@UserChiusa").Value = TextBox23.Text
myCommand.Parameters.Add(New SqlParameter("@UserPresaCarico", SqlDbType.NVarChar, 50))
myCommand.Parameters("@UserPresaCarico").Value = TextBox24.Text
'myCommand.Parameters.Add(New SqlParameter("@DataPresaCarico", SqlDbType.DateTime, 8))
'myCommand.Parameters("@DataPresaCarico").Value = TextBox25.Text
myCommand.Parameters.Add(New SqlParameter("@Stato", SqlDbType.Int, 4))
myCommand.Parameters("@Stato").Value = TextBox26.Text
myCommand.Parameters.Add(New SqlParameter("@Immagine", SqlDbType.NVarChar, 50))
myCommand.Parameters("@Immagine").Value = TextBox27.Text
myCommand.Parameters.Add(New SqlParameter("@TipoStato", SqlDbType.NVarChar, 50))
myCommand.Parameters("@TipoStato").Value = TextBox28.Text
Grazie per l'Help.
paoval72
Profilo
| Senior Member
297
messaggi | Data Invio:
mar 7 dic 2010 - 16:59
Bravi! Forse ci siamo!
Non mi ero accorto che in questa query hai invertito il parametro e il nome colonna. Ti funziona per il primo campo perchè è corretto:
Chiusa=@Chiusa
Invece, dopo sono invertiti. Ad esempio.
,@DataChiusa=DataChiusa
Basta sistemarli:
,DataChiusa=@DataChiusa
Ottimismo e... buona serata!
PV
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 !