MSAccessからVBのSQLServerデータベースからデータを読み取るための最良の方法は何ですか?
SQL Serverデータベースをセットアップしていて、Accessでフォームなどを実行しています。次に、ブール値を読み取り、VBで読み取る必要があります。
新しい接続を開かずにそれを実行したいと思います。それはどういうわけか可能ですか?
MSAccessからVBのSQLServerデータベースからデータを読み取るための最良の方法は何ですか?
SQL Serverデータベースをセットアップしていて、Accessでフォームなどを実行しています。次に、ブール値を読み取り、VBで読み取る必要があります。
新しい接続を開かずにそれを実行したいと思います。それはどういうわけか可能ですか?
リンクされたテーブルに対してクエリを実行できます。私の知る限り、SQLServerでのブール値の通常の選択はビットです。
SELECT dbo_Table1.ID, dbo_Table1.ABoolean
FROM dbo_Table1
WHERE dbo_Table1.ABoolean=True
MS Accessでは、Trueは-1と表示され、SQLServerでは1と表示されます。
クエリは、VBAを介して実行することもできます(それが必要な場合)。
Dim rs As DAO.Recordset
Set rs = CurrentDb.OpenRecordset("dbo_table_1")
Do While Not rs.EOF
If rs!ABoolean = True Then
Debug.Print rs!ID
End If
rs.MoveNext
Loop
または
sSQL = "SELECT ID, ABoolean FROM dbo_table_1 WHERE ABoolean=True"
Set rs = CurrentDb.OpenRecordset(sSQL)
rs.MoveLast
Debug.Print rs.RecordCount
または
Debug.Print DLookup("Aboolean", "dbo_table_1", "ID=37")