2016-07-12 4 views
-1

「はい」をアクティブにしたデータグリッドに学生を表示しようとしています。生徒が「いいえ」をアクティブにしている場合、フォームはそれを隠して、「はい」と表示するだけです。 私が今受信している問題は、選択した値をVB6でのみ表示する

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 
+0

が実際に「表1」という名前のテーブルですか? – jac

答えて

1

Activeとは何ですか?
ActiveBooleanのデータ型(はい/いいえ)の場合、任意の値はTrueまたはFalseです。その場合、クエリは次のとおりです。

"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 
+0

2番目の選択肢を使用しましたが、それでも私はFROM句に構文エラーがあります。**私がそれをデバッグすると、 'Adodc1.refresh'というステートメントに** false **と表示されます。 –

+0

テーブル名( 'Table1')の綴りが正しいかどうか確認してください。 – marlan

+0

また、 'アクティブ'は実際には 'Yes/No'ではなく、実際に' No'が 'String'ではなく、String型であることを確認することをお勧めします。 – marlan

関連する問題