我正在使用以下代码连接到我的数据库。
Dim conStr As String = "Data Source=.\SQLEXPRESS; ![enter image description here][1]
AttachDbFilename=|DataDirectory|\dbTest.mdf;
Integrated Security=True;
User Instance=True"
Dim sqlQry As String = "SELECT * FROM [tblTest] WHERE ([Name] = @Name)"
Dim dAdt As New SqlDataAdapter(sqlQry, conStr)
Dim dSet As New DataSet()
然后用
填充适配器dAdt.Fill(dSet, "tblTest")
然后我可以按照我想要的方式使用数据。
我的问题是: 如何通过我的webform上的文本框传递用户将提供的参数值。
Dim sqlQry As String = "SELECT * FROM [tblTest] <b>WHERE ([Name] = @Name)
我的意思是如何将参数值传递给我的查询? 请修改我的代码告诉我该怎么做。 非常感谢。
答案 0 :(得分:2)
您需要添加参数对象并将代码放在Button的Click处理程序或您要使用的任何其他事件中。 (阅读@cjk帖子)。
Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click
Dim conStr As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\dbTest.mdf;Integrated Security=True;User Instance=True"
Dim sqlQry As String = "SELECT * FROM [tblTest] WHERE ([Name] = @Name)"
Dim Cn As New SqlConnection(conStr)
Dim SelectCmd As New SqlCommand(sqlQry, Cn)
SelectCmd.Parameters.AddWithValue("@Name", txtName.Text)
'Or
'SelectCmd.Parameters.Add("@Name",System.Data.SqlDbType.VarChar).Value=value_here
Dim dAdt As New SqlDataAdapter(SelectCmd)
Dim dSet As New DataSet
dAdt.Fill(dSet, "tblTest")
......
End Sub
答案 1 :(得分:1)
你需要把非声明性的(即做东西的代码)放到方法中。
示例顶部的行,在类声明下只是变量的声明,并且在类被实例化时设置。
要实际做某事,需要有一个被调用的方法。