变量未声明.由于其保护级别,它可能是不可访问的



我是VB.NET.的新手

我的问题是我有一个文本框,并将数据输入数据库

<asp:TextBox ID="txt_hello" runat="server"  Width="130px"></asp:TextBox></td>

然后我可以连接到数据库,但当我在列中输入"hello"并提交时,它会弹出错误消息:

'xt_hello'未声明。由于其保护级别,它可能是不可访问的。

Dim hello as String = txt.hello
If xxx  Then
sqlUpdate = "UPDATE xxx SET server='" ,Hello=" & hello & " 
ElseIf xxx Then
sqlUpdate = "INSERT INTO xxx (Hello ) values ("& hello & ")" 

我的数据库表列名是";你好;。

有人能给我建议吗?

永远不要连接字符串来构建sql字符串。始终使用配件。Using...End Using块确保连接被关闭和释放,并且命令被释放。

Dim sql As String
If Condition1 Then
sql = "UPDATE SomeTableName SET Hello= @Hello;"
ElseIf Condition2 Then
sql = "INSERT INTO SomeTableName (Hello ) values (@Hello);"
Else
Return
End If
Using con As New OleDbConnection(ConStr),
cmd As New OleDbCommand(sql, con)
cmd.Parameters.Add("@Hello", OleDbType.VarChar).Value = txt_Hello.Text
con.Open()
cmd.ExecuteNonQuery()
End Using

您必须使用:

txt_hello.Text

txt_hello是一个控件(TextBox(,而不是字符串。其Text属性为字符串。

最新更新