• ベストアンサー

ファイルを読み込んで変数へ

VB初心者です。 ファイルの文字列を読み込んで、変数に格納し、SQL文のテーブル名に指定したいのですが、どうすればよいのでしょうか? テキストから文字列を取得するところまではできたのですが、変数にもって、SQL文に組み込むことができません。実行すると「テーブル名が無効です。」とエラーになります。 どうか、皆様ご教授ください。

質問者が選んだベストアンサー

  • ベストアンサー
  • ttyp03
  • ベストアンサー率28% (277/960)
回答No.3

#1です。 SQLはVBではありませんので、直に書くことはできません。 String型の変数等に格納し、それをデータベースのSQL実行関数に渡します。 Dim sql as string sql = "select A from " & srhLine SQL実行関数( sql ) もちろん変数を介さずに直に書くことも出来ます。 SQL実行関数( "select A from " & srhLine )

pyontanrie
質問者

お礼

ありがとうございます。 大変助かりました。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

SQL文は普通テキストです。 コマンドラインからいれるもの アクセス(VBA)のようにSQL文実行コマンドがあったり、 ファイルオープン時にそのSQL文を実行して開いたり 開発環境でSQL文字列を入力して実行をクリックしたり で実行できるものを経験しました。 しかしFSOの中で、SQL文を裸で他のステートメントの中に混じらせて書けば、実行してくれることはないはずです。 FSOがSQLを実行する仕様に進歩したら、 (テーブル名文字列)=ファイルの文字列を読み込んで、変数に格納し、SQL文のテーブル名に指定 strSQL="SELECT A FROM" & (テーブル名文字列) EXECUTESQL strSQL のようなイメージになると思いますよ。

pyontanrie
質問者

お礼

ありがとうございます。 初心者に分かりやすく教えていただき、 感謝しております。

  • ttyp03
  • ベストアンサー率28% (277/960)
回答No.1

まずはプログラムを提示しましょう。

pyontanrie
質問者

補足

プログラムはこのとおりです。 Set fso = CreateObject("Scripting.FileSystemObject") Set src = fso.GetFolder("C:\script\tips") ' 対象フォルダの指定 Set TextFile = fso.OpenTextFile(FileName) ' テキストファイルのオープン Do Until TextFile.AtEndOfStream tmpLine = TextFile.ReadLine ' 1行読み込み srhLine = tmpLine Loop select A from srhLine ※エラー

関連するQ&A

専門家に質問してみよう