仅在VB6中显示所选值

时间:2016-07-12 11:19:36

标签: sql ms-access datagrid vb6 ado

我正在尝试在数据网格中显示有"是"积极的。如果学生有"不"作为活动,表单必须隐藏它,并且只向学生显示" yes"。 我现在收到的问题是

  

FROM子句中的语法错误。

代码:

Private Sub Form_Load()
Dim sql As String

connSearch.Open connstr
Adodc1.ConnectionString = conn.connstr

sql = "select * from Table1 where Active  <>" & "'No'"

Adodc1.RecordSource = sql
Set StudentTable.DataSource = Adodc1
Adodc1.Refresh
Adodc1.Visible = False
End Sub

1 个答案:

答案 0 :(得分:1)

什么是Active
如果ActiveBoolean数据类型(是/否),则其可选值为TrueFalse。在这种情况下,您的查询是:

"select * from Table1 where Active <> False"

如果ActiveString数据类型; 'no''No'的值是否相同?你最好将所有人转换成大写或小写:

"select * from Table1 where Ucase(Active) <> 'NO'"

编辑:修改后的代码

Dim sql As String

sql = "select * from Table1 where [Active] <> 'No'"
Adodc1.ConnectionString = conn.connstr
Adodc1.CommandType = adCmdText
Adodc1.RecordSource = sql
Set StudentTable.DataSource = Adodc1
Adodc1.Refresh
Adodc1.Visible = False