2

レコードを読み書きするには、VBA を使用して Word ドキュメントを SQL Server に接続する必要があります。さて、データベースに接続するさまざまな方法について、私は本当に混乱しています。ADO、ODBC などがあります。私は、SQL Server データベースを接続するさまざまな方法を見てきました。同僚が ODBC を使用するように求めています。

Office VBA で ODBC を使用して SQL Server データベースに接続する最良の方法は何ですか?

SELECT および INSERT ステートメントの例も高く評価されます。

編集: VB .Net/C# に「System.Data.SqlClient.SqlConnection」や「System.Data.SqlClient.SqlCommand」のようなものはありませんか?

4

2 に答える 2

5

この例では、ODBCを使用しています。

'Microsoft ActiveX Data Objects x.x library
Dim cn As New ADODB.connection
Dim rs As New ADODB.recordset

    cn.Open "DRIVER={SQL Server};SERVER=srv;" & _
       "trusted_connection=yes;DATABASE=test"

    rs.Open "SELECT * FROM table_1", cn

この例では、OleDbを使用しています

'Microsoft ActiveX Data Objects x.x library
Dim cn As New ADODB.connection
Dim rs As New ADODB.recordset

    cn.Open "Provider=sqloledb;Data Source=srv;" & _
      "Initial Catalog=Test;Integrated Security=SSPI;"

    rs.Open "SELECT * FROM table_1", cn

参照: http: //www.connectionstrings.com/sql-server-2008

于 2012-09-26T14:40:28.133 に答える
0

同僚がおそらくODBCの使用を望んでいる理由は、会社がすべての単一のワークステーションに標準化されたODBC接続を提供しているためです。

ここでの良い点は、ログイン/パスワード以外の接続プロパティについて心配する必要がないことです。これはすべて設定されているためです。ソフトウェア(ワード)とサーバーの間で動作するODBCを想像してみてください。これにより、会社の変更に関して非常に簡単になります。(サーバーアドレスが変更される可能性があり、IT部門はエンドユーザーが知らなくてもODBCの設定を変更できます)

ベストはあなたの同僚と話し、彼の懸念について尋ねることでしょう。もう1つの理由は、ODBCがadoよりも高速である可能性があることです。私もこの体験をしました。

于 2012-09-26T13:54:06.470 に答える