Asp.net 我能';t在我的acces数据库中插入值
这是我在VB.NET中的代码 我的try-catch显示指令Asp.net 我能';t在我的acces数据库中插入值,asp.net,vb.net,ms-access,Asp.net,Vb.net,Ms Access,这是我在VB.NET中的代码 我的try-catch显示指令INSERT-INTO中存在语法错误。我不知道我的插页怎么了。我找了一个多小时的错误。。。我不是VB.NET方面的专家,我在C#方面做得更好,但我还是需要在VB中这样做 谢谢你帮助我 Sub InsertRecord() Dim conClasf As OleDbConnection Dim cmdClasf As New OleDbCommand Dim strClasf As String Dim strSQL As String
INSERT-INTO
中存在语法错误。我不知道我的插页怎么了。我找了一个多小时的错误。。。我不是VB.NET方面的专家,我在C#方面做得更好,但我还是需要在VB中这样做
谢谢你帮助我
Sub InsertRecord()
Dim conClasf As OleDbConnection
Dim cmdClasf As New OleDbCommand
Dim strClasf As String
Dim strSQL As String
Dim intRowsAff As Integer
lblErrMsg.Text = ""
lblRecsAff.Text = ""
strClasf = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & _
server.mappath("BecsEtMuseaux.mdb") & ";"
conClasf = New OleDbConnection(strClasf)
conClasf.Open
Randomize
strSQL = "INSERT INTO client (" & _
"UserName, " & _
"Prenom, " & _
"Nom, " & _
"password, " & _
"mail, " & _
"Addresse, " & _
"Ville, " & _
"PostalCode, " & _
"Province, " & _
"Pays, " & _
"AnimalGenre, " & _
"NomAnimal, " & _
"Race, " & _
") VALUES ('" & _
Replace(txtUserName.Text, "'", "''") & _
"', '" & _
Replace(txtPrénom.Text, "'", "''") & _
"', '" & _
Replace(txtNom.Text, "'", "''") & _
"', '" & _
Replace(txtPass.Text, "'", "''") & _
"', '" & _
Replace(txtMail.Text, "'", "''") & _
"', " & _
Replace(txtAdresse.Text, "'", "''") & _
"', " & _
Replace(txtVille.Text, "'", "''") & _
"', " & _
Replace(txtPostal.Text, "'", "''") & _
"', " & _
Replace(txtProvince.Text, "'", "''") & _
"', " & _
Replace(txtPays.Text, "'", "''") & _
"', " & _
Replace(rblAnimal.Text, "'", "''") & _
"', " & _
Replace(txtAnimal.Text, "'", "''") & _
"', " & _
Replace(txtRace.Text, "'", "''")
cmdClasf = New OleDbCommand(strSQL, conClasf)
Try
intRowsAff = cmdClasf.ExecuteNonQuery()
Catch ex As Exception
lblErrMsg.Text = ex.Message
End Try
lblRecsAff.Text = intRowsAff & " record(s) inserted"
conClasf.Close
End Sub
也许这会让你犯错误
"Race, " & _ //Race**,** try to remove ,
")
如果您尝试以下方法,效果会更好:
您可以使用参数来避免sqlinjection
strSQL = "INSERT INTO client (UserName,Prenom,Nom,password,mail,Addresse,Ville,PostalCode,Province,Pays,AnimalGenre,NomAnimal,Race) VALUES (@UserName,@Prenom,@Nom,@password,@mail,@Addresse,@Ville,@PostalCode,@Province,@Pays,@AnimalGenre,@NomAnimal,@Race)"
cmdClasf.Parameters.Add("@UserName", OleDbType.VarChar, 50).Value = txtUserName.Text
//DO OTHER STUFF UNITL @Race
另见:
希望这有帮助
关于这可能会导致您出错
"Race, " & _ //Race**,** try to remove ,
")
如果您尝试以下方法,效果会更好:
您可以使用参数来避免sqlinjection
strSQL = "INSERT INTO client (UserName,Prenom,Nom,password,mail,Addresse,Ville,PostalCode,Province,Pays,AnimalGenre,NomAnimal,Race) VALUES (@UserName,@Prenom,@Nom,@password,@mail,@Addresse,@Ville,@PostalCode,@Province,@Pays,@AnimalGenre,@NomAnimal,@Race)"
cmdClasf.Parameters.Add("@UserName", OleDbType.VarChar, 50).Value = txtUserName.Text
//DO OTHER STUFF UNITL @Race
另见:
希望这有帮助
请退出密码字段。这是我的保留字
退出密码字段。这是我的保留字
这不是SqlDbType这是access您确定这将在其VB上工作吗。试试看。使用MS access在ASP.NET中进行参数查询我尝试了有关参数的提示,但在指令INSERT INTO时仍然出现错误。这不是SqlDbType,这是access。您确定这在VB中可以正常工作吗。试试看。使用MS Access在ASP.NET中进行参数查询我尝试了使用参数的提示,但在插入指令时仍然出现错误