我在数据库中的信息很弱,我不知道如何使用查询。我在网上搜索过,我学到了一些关于查询的知识,我发现了一个例子,但我不知道如何在vb.net中使用它。 SQL Server中的查询将如下所示:
select hb from gen where date between 12/6/2014 and 16/6/2014
它工作正常,但我不知道如何在vb.net中使用它 所以写了这行代码,我认为我的解决方案将是这样的:
BindingSource1.Filter = String.Format("select hb from gen where date between" & DateTimePicker1.Value & "and" & GENDateTimePicker1.Value)
这条线有什么问题
答案 0 :(得分:1)
如果您阅读了文档,那么您就知道BindingSource.Filter
属性要求日期以#M / dd / yyyy#格式表示。此外,String
仅代表WHERE
子句,而不是整个查询。您还没有正确使用String.Format
。你的代码应该是:
BindingSource1.Filter = String.Format("[Date] BETWEEN #{0:M/dd/yyyy}# AND #{1:M/dd/yyyy}#", DateTimePicker1.Value, GENDateTimePicker1.Value)
答案 1 :(得分:1)
以下是有关如何在vb.net中使用sql查询的示例:
首先,您要将连接字符串设置为数据库。接下来,您可以使用sql语句的内容声明一个字符串。第三,您将要设置一个using语句,该语句将在退出时关闭sql连接。我还会阅读参数化的sql以减轻对数据库的攻击。</ p>
Dim con As String = (ConfigurationManager.ConnectionStrings("YOURCONNECTIONSTRINGNAME").ConnectionString)
Dim result as String = String.Empty 'set the result to whatever the datatype of hb is in your database
Dim query as String = "select hb from gen where date between '12-6-2014' and '16-6-2014'"
Using conn As New SqlClient.SqlConnection(con)
Try
conn.Open()
Dim command As New SqlClient.SqlCommand(query, conn)
command.Connection = conn
command.CommandType = CommandType.Text
result = command.ExecuteScalar()
conn.Close()
conn.Dispose()
Catch ex As Exception
System.Diagnostics.Debug.WriteLine(ex.Message)
End Try
End Using
答案 2 :(得分:0)
这是我在硬搜索和vb.net和SQL服务器上的大量讲座后所做的解决方案&#34;对不起我是初学者&#34;
Me.BindingSource1.Filter = String.Format(" date <= #{0:M/dd/yyyy}# AND Date >= #{1:M/dd/yyyy}# and hb like'" & TextBox1.Text & "%'", DateTimePicker1.Value, DateTimePicker2.Value)
和&#34; hb&#34;是我想要找到的字段的名称 谢谢你的时间和快速回复