|
ASP Tips |
|
No.0001 CSVファイルにADOでアクセス |
CSVファイルにSQL文を発行してデータを処理するにはODBCの「Microsoft Text Driver」を使用します。
次の例では「c:\data\csv\test.csv」から取得したデータを2次元配列「arrData」に取得しています。
|
Dim objConn, objRS
Dim strDir, strCsv, strSql
Dim arrData
strDir = "c:\data\csv"
strCsv = "test.csv"
Set objConn = Server.CreateObject("ADODB.Connection")
Set objRS = Server.CreateObject("ADODB.Recordset")
objConn.ConnectionString = "Provider=MSDASQL;" & _
"Extended Properties=""DRIVER={Microsoft Text Driver (*.txt; *.csv)};" & _
"DBQ=" & strDir & """"
strSql = "SELECT * FROM " & strCsv & " WHERE Category = 1 ORDER BY Number"
objConn.Open
objRS.Open strSql, objConn
arrData = objRS.GetRows()
objRS.Close
objConn.Close
Set objRS = Nothing
Set objConn = Nothing
|
|
「ConnectionString」で「DBQ=」にCSVファイルが入っているフォルダを指定します。
そして、SQL文の中で、通常はテーブルを指定する箇所でCSVのファイル名を指定します。
「Microsoft Text Driver」ではデータベースがフォルダで表され、その中のテーブルがファイルで表される、と考えることができます。
この例ではRecordsetオブジェクトの「GetRows」によって「arrData」にデータを入れるようになっているので、これを2重ループでテーブルに書き出したりして利用します。
|
|
|
|
|
|