Viual Studio 2008 e database in access non salva strnghe con '

venerdì 25 settembre 2009 - 15.19

Mau67 Profilo | Expert

Salve a tutto il forum, ho il seguente problema, nella mia applicazione non riesco a salvare dei nomi con l'apostrofo(')

Esempio: TIPO' RICO' ecc....

Questo e il codice che uso per inserire:

Connection.Open()
Dim query As String = "insert into Anagrafica(CodiceFiscale,Categoria,Grado,Cognome,Nome,LuogoNascita,ProvinciaNascita,DataNascita,Indirizzo,Comune,ProvinciaResidenza,Cap,DataArruolamento,Omogenizzazione)values('" + TextBox1.Text + "','" + ComboBox1.Text + "','" + ComboBox2.Text + "','" + TextBox2.Text + "','" + TextBox3.Text + "','" + TextBox4.Text + "','" + TextBox5.Text + "','" + DateTimePicker1.Text + "','" + TextBox6.Text + "','" + TextBox7.Text + "','" + TextBox8.Text + "','" + TextBox9.Text + "','" + MaskedTextBox1.Text + "','" + ComboBox3.Text + "')"
Dim cmd As New OleDbCommand(query, Connection)
Dim dr As OleDbDataReader = cmd.ExecuteReader()
Connection.Close()
Me.Close()

Questo per modificare:

Try
Connection.Open()
Dim query As String
query = "update Anagrafica set CodiceFiscale='" + lblName.Text.ToUpper() + "',Categoria='" + ComboBox1.Text + "',Grado='" + ComboBox2.Text + "',Cognome='" & TextBox1.Text & "',Nome='" + TextBox2.Text.ToUpper() + "',LuogoNascita='" + TextBox3.Text.ToUpper() + "',ProvinciaNascita='" + TextBox4.Text.ToUpper() + "',DataNascita='" + DateTimePicker1.Text.ToUpper() + "',Indirizzo='" + TextBox5.Text.ToUpper() + "',Comune='" + TextBox6.Text.ToUpper() + "',ProvinciaResidenza='" + TextBox7.Text.ToUpper() + "',Cap='" + TextBox8.Text.ToUpper() + "',DataArruolamento='" + MaskedTextBox1.Text.ToUpper() + "',Omogenizzazione='" + ComboBox3.Text.ToUpper() + "'where CodiceFiscale='" + lblName.Text + "'"
Dim cmd1 As New OleDbCommand(query, Connection)
Dim dr1 As OleDbDataReader = cmd1.ExecuteReader()
Connection.Close()
Me.Close()
Catch ex As Exception
MsgBox(ex.Message())
End Try


Mi và in errore Cosa devo fare?

Grazie in anticipo
Mau67

ilario Profilo | Senior Member

prima di passarla al db controlla se è presente l'apostrofo e raddoppialo

ciao
ilario

Mau67 Profilo | Expert

Grazie era semplice per un occhio esperto funziona

Ciao
Mau67

SSUPERPIPPO Profilo | Guru

Questo stile di programmazione è obsoleto e poco leggibile, la possibilità di errore è alta.
Se utilizzi i parametri ti semplifichi la vita e non di poco.

Esempio:

dim SqlCmd as new SqlCommand

SqlCmd.CommandText="INSERT INTO (Campo1, Campo2, Campo3....) VALUES (@Param1, @Param2, @Param3....)"
SqlCmd.Parameters.AddWithValue("@Param1", valore1)
SqlCmd.Parameters.AddWithValue("@Param2", valore2)
SqlCmd.Parameters.AddWithValue("@Param3", valore3)

http://blogs.dotnethell.it/alebadalin
http://acquariochepassione.blogspot.com/

Mau67 Profilo | Expert

Grazie per l'aiuto funziona decisamente meglio

Grazie ancora
Mau67

SSUPERPIPPO Profilo | Guru

Di niente, ciao
http://blogs.dotnethell.it/alebadalin
http://acquariochepassione.blogspot.com/

Mau67 Profilo | Expert

Ciao scusa riesci a darmi una mano anche su questo problema?
ti posto il thread
http://www.dotnethell.it/forum/messages.aspx?ThreadID=32
Grazie
Mau67
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5