1

刚学了一点VB,想搜索一个很简单的SQL查询如下:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    firstOrd = txtFirstOrd.Text
    Me.OrdersBindingSource.Filter = "select * from orders WHERE firstDate =" & firstOrd
End Sub

我刚刚在一个简单的按钮上执行了这个并继续得到这个:

Syntax error: Missing operand after 'orders' operator.

我很确定这是一个报价问题,但无法解决!任何帮助都会很棒!

4

2 回答 2

1

听起来您正在使用 SQL 解释器,它考虑 SQL 中orders的关键字。为了清楚地表明它是一个表名,请引用它。

"select * from [orders] WHERE firstDate =" & firstOrd

但是,通常建议(但并不总是实用)只是为了避免作为关键字的表名。

于 2012-10-08T19:35:40.797 回答
1

看起来您正在尝试使用 bindingSource 的过滤器。此过滤器属性可能包含检查给定 bindingSource 的每一行的条件

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    firstOrd = txtFirstOrd.Text
    Me.OrdersBindingSource.Filter = String.Format("firstDate = '{0}'", firstOrd)
End Sub

我假设firstOrd将包含一个dateTime 值,因此可以考虑查看BindingSource.Filter by Date

于 2012-10-08T19:43:41.733 回答