csv/txt の例で Database() を開きますか?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />.csv または .txt ファイルへの ODBC の Open Database() の例を持っている人はいますか?Excel 2007 .xlsx で ODBC を正常に動作させることはできますが、.csv ファイルを開くためのテキスト ファイル接続文字列を正しく推測できませんでした。Windows ODBC データ ソース アドミニストレータを介して、正しい「ユーザー DSN」名の文字列を参照しています。以下に示す「DriverId」が間違っているのではないかと思いますか?thx... DJ
これは機能します:
dt_excel=open database("DSN=Excel Files xlsx;DBQ=C:\Data.xlsx;DriverId=790;MaxBufferSize=2048;PageTimeout=5;","SELECT *","Result");
これは機能しません:
dt_csv=open database("DSN=テキスト ファイル;DBQ=C:\Data.csv;DriverId=27;MaxBufferSize=2048;PageTimeout=5;","SELECT *","結果");
Re: csv/txt の例で Database() を開きますか?やあ、MS さん、そうです、昨夜遅くにやっとわかりました!はい、それはまさにあなたが構文的に上に投稿したものです。このスレッドに返信していただきありがとうございます。記録として、テキスト ファイルに対して ODBC を実行することについて私が学んだことを次に示します。実際にはJSLとは何の関係もありませんが、テキストファイル自体にODBCを実行するために必要な業界の慣習/構文は次のとおりです。
を。 schema.ini の作成 - テキスト ファイル形式をサポートするには、このファイルを作成する必要があります。テキストファイルと同じディレクトリに配置します。メモ帳で簡単に作成できます。詳細については、ODBC テキスト ファイルの Google schema.ini を参照してください。
b.正しい ODBC 構文を使用します。たとえば、Excel ODBC DBQ 文字列とは異なり、テキスト ファイルの ODBC DBQ 文字列は、パスとファイル名を参照するのではなく、パスのみを参照します。これは私がハングアップしたものです。したがって、これが機能します(上に投稿したように-重要なのは、DBQ=ではなくDBQ = を参照し、ファイル名をSQL FROMステートメントに分割することです):
dt_csv=open database("DSN=テキスト ファイル;DBQ=C:\;","SELECT * FROM Data.csv","結果");
c.マイナーな詳細 - ただのメモ。Win7 を使用している場合、ODBC マネージャーには 2 つの異なる場所があります。1 つは 32 ビットの場所で、もう 1 つは 64 ビットの場所です。マイクロソフトは、それらをグリーンランドやアイスランドのような名前にしました (一種の誤解を招きます)。ODBC テキスト ファイル ドライバーなどを追加/変更する場合は、この点に注意してください。Win8 では、これらの別の名前または識別子を何らかの形で作成する可能性があると聞いています。
Win7 ODBC マネージャー:
32 ビット: C:\Windows\SysWOW64\odbcad32.exe
64 ビット: C:\Windows\System32\odbcad32.exe
とにかく、上記の a.) + b.) により、JSL から ODBC を生のテキスト ファイルに使用できます。非常に素晴らしい... ...dj
Re: csv/txt の例で Database() を開きますか?この変種を試しましたか? サンプルファイルで動作しましたが、区切り文字に問題がありました。 しかし、少なくとも、テキスト ファイルから (台無しにされた) データを含むテーブルを取得しました。
dt_csv =データベースを開く( "DSN=テキスト ファイル;DBQ=C:\;" 、 「SELECT * FROM Data.csv」 、 "結果" ) ;
Re: csv/txt の例で Database() を開きますか?ありがとうチャド。「DriverId」文字列とその他の後続の文字列を削除しようとしましたが、同じエラー メッセージが表示されます。テキスト ファイル ドライバーが見つからないかのようです (Windows ODBC マネージャーでは正常に表示されますが)。そうでなければ、接続文字列に何らかのタイプミス/ミスマッチがありますか?奇妙なことに、これはすべて Excel でうまく機能します (ただし、私のデータ ファイルは csv ファイルなので、ODBC を使用するためにデータ ファイルを .xlsx ファイルに変換する必要はありません)。
これは機能しません:
dt_csv=open database("DSN=テキスト ファイル;DBQ=C:\Data.csv;","SELECT *","結果");
結果のエラー メッセージ:
[Microsoft][ODBC Text Driver] '(unknown)' は有効なパスではありません。パス名のつづりが正しいこと、およびファイルが存在するサーバーに接続していることを確認してください。
Re: csv/txt の例で Database() を開きますか?DSN 文字列で「DriverId」を参照したことはないと思います。全部やめたら効果あるの?