VB2010でアクセスのクエリのSQL文を変更したい。


ルー  2012-02-24 18:29:43  No: 103233  IP: [192.*.*.*]

VB2010でアクセスのクエリのSQL文を変更したいのですが
下記のようなコードで、データは取り出せたのですが
このデータをSQLで処理することはできるのですが
他のプログラムに渡すためにアクセスのクエリが変更できればと
思うのですが、参考になるサイトなどありますでしょうか?

       Dim CnString As String
        Dim UserID As String = "Admin"
        Dim Password As String = ""
        Dim SQL As String
        Dim SQL2 As String
        Dim sfina As String = "c:\data.mdb"
        Dim DaAdap As OleDb.OleDbDataAdapter
        Dim Tbl As New DataTable()
        Dim Bds As New BindingSource
        ''Dim CN As New ADODB.Connection

        CnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sfina & ";"
        CnString = CnString & "User ID=" & UserID & ";"
        CnString = CnString & "Jet OLEDB:Database Password=" & Password

編集 削除
魔界の仮面弁士  2012-02-27 16:59:32  No: 103234  IP: [192.*.*.*]

ここは、VB2-VB6 用の掲示板です。
VB.NET に関する話題は、お隣の掲示板でお願いします。


一応回答しておくと:

> 下記のようなコードで、データは取り出せたのですが
いや、これだけのコードでは取り出せないはずですよ。

Tbl 等の変数は、ただ宣言して New しただけであって、
その変数を利用している個所(Tbl に値を取り込む処理)が
ありませんし、そもそもクエリー名もSQLも指定されていませんから。


> 他のプログラムに渡すためにアクセスのクエリが変更できればと
Access 等で事前に mdb 内に含めておいたクエリーを書き換えたい
ということだとしたら、それは ADO.NET ではできません。

OleDbCommandAdapter で DROP および CREATE の SQL を実行すれば、
一応、削除 & 再作成ぐらいはできますが…あまり細かい指定はできません。


正攻法としては、DAO の QueryDef オブジェクト経由で書き換えるか、
ADOX を使うかですね。いずれにしても .NET のマネージオブジェクトでは無く
COM コンポーネントでのアクセスということになります。

編集 削除