vb.net - 变量未声明。由于其保护级别,它可能无法访问
问题描述
我是 VB.NET 的新手。
我的问题是我有一个文本框并将数据输入数据库
<asp:TextBox ID="txt_hello" runat="server" Width="130px"></asp:TextBox></td>
然后我可以连接到数据库但是当我在列中输入'hello'并提交时,它会弹出错误消息:
'txt_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 & ")"
我的数据库表列名称是“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
推荐阅读
- reactjs - Jest UI React js 组件 - 单元测试
- css - 将 CSS 文件上传到 Seaside FileLibrary 时出现问题
- javascript - img 标签 css 上方的线性渐变
- python - 如何使用 filter() 在 Python 中查找年龄限制?
- c++ - 从自然语言到 C++ 表达式
- php - 在yii2中将多维数组中的单个值记录到表中
- azure-application-insights - 按 IP 地址过滤 App Center 分析
- node.js - 如何更新警告已弃用
- java - 如何使用 pdfbox java 修复链接可访问性的标记注释失败/错误?
- angular - Ionic 5 - 部署新版本时的缓存问题