申し訳ありませんが、素人の質問です。
WSHをVBSCriptでDBのレコードを削除、
テキストファイルを呼びだし、
呼び出したデータを変数に格納し、DBにインサートしたいのですが、
DBへの接続の仕方がわかりません。
ASPで作成したものは正常に動作するのですが、
WSHで作成したものは、接続するさいにエラーしてしまいます。
エラー箇所は下記の部分です。
すみませんが、回答お願いします。
テキスト呼び出し箇所
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Set fts = fso.OpenTextFile("D:\**\*\*\*\A.dat", 1, False, 0)
接続箇所
Con_s.BeginTrans
DELETE箇所
Set Rs = Server.CreateObject("ADODB.Recordset")
Cmd_s.CommandText = delSq
Rs.Open Cmd_s, , adOpenForwardOnly
インサート箇所
Set Rs = Server.CreateObject("ADODB.Recordset")
Cmd_s.CommandText = strSql
Rs.Open Cmd_s, , adOpenForwardOnly
切断箇所
Con_s.CommitTrans
No.3ベストアンサー
- 回答日時:
#2>
多分
Set Con_s = CreateObject("ADODB.Connection")
Con_s.Open "Provider=sqloledb;Data Source=Server;Initial Catalog=Pubs;User Id=;Password=; " 'とかなんとか
'なんだかんだ
Con_s.BeginTrans
とかされていると思いますが
多分BeginTransの前でCon_sの作成とかオープンに失敗しているのではないでしょうか?
ADOのオブジェクトの操作BeginTransなどのメソッドやその呼びだし方法などは、VBScriptだからといって変わりませんので。
ご回答ありがとうございます。
試行錯誤しながら取り組んで見ようと思います。
また、わからなくなりましたら質問させてください。
よろしくお願いします。
たびたびの質問への回答ありがとうございました。
No.2
- 回答日時:
>…もそのままじゃ全然ダメだってことですよね?!
いえ、そうじゃなくて
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Set fts = fso.OpenTextFile("D:\**\*\*\*\A.dat", 1, False, 0)
の部分で言えば
最初のSetでfsoを作るのに作れていないから
次の行の
Set ftsが失敗するという意味なので
全部がダメだといっているのではないです。
とりあえず、CreateObjectの部分を直してどうか
やってみてはどうでしょうか?
ご回答ありがとうございます。
なにぶん、プログラム自体が関して初めてなので
少々混乱しております。
とりあえず、
Set fso = CreateObject("Scripting.FileSystemObject")
Set fts = fso.OpenTextFile("D:\**\*\*\*\A.dat", 1, False, 0)
こういう形でやってみました。
その結果、
Set fso = CreateObject("Scripting.FileSystemObject")
Set fts = fso.OpenTextFile("D:\**\*\*\*\A.dat", 1, False, 0)
の部分までは通ったようで、
次の「Con_s.BeginTrans」の部分でエラーが出てしまいました。BeginTransに関してもASPとWSHでは記述に違いがあるのでしょうか?
再三の質問となってしまい申し訳ありませんが、
ご回答いただけたら幸いです。
No.1
- 回答日時:
Server.CreateObject(…)
はASPでの書き方で(クライアントでなく)サーバーでオブジェクトを作成するという意味あいです。
単にWSHで書く場合には
WScript.CreateObject(…)
と書きます。
この部分がうまくできていないので、関連する部分もエラーになるのだと思います。
早速のご回答ありがとうございます。
ご回答から考えると、当然のように
Cmd_s.CommandText = strSql
Rs.Open Cmd_s, , adOpenForwardOnlyも
con_s.BeginTrans、Con_s.CommitTransも
fso.OpenTextFile(~)もそのままじゃ全然ダメだってことですよね?!
もし宜しければ、例文などございましたら
ご教授いただければと思います。
お礼文であるのに厚かましい再質問と
なってしまいましたが、お許し下さい。
何卒宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) DoCmd.SearchForRecord が動かない時の解決方法 3 2022/07/22 15:31
- Access(アクセス) docmd.gotorecordを起動するには 5 2022/06/17 15:20
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Access(アクセス) 実行時エラー3131 FROM 句の構文エラーです について 7 2022/06/13 15:45
- Excel(エクセル) Excel-VBAの「しばらくお待ちください」のダイアログが自動的に閉じない 2 2023/05/24 15:31
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- PHP PHP一覧表示した項目にリンクをはりたい 1 2023/07/12 17:08
- その他(開発・運用・管理) Windowsバッチファイルでリモートデスクトップを自動ログインするが確認画面が出る対処方法 1 2022/12/19 15:48
- Visual Basic(VBA) マクロについて教えてください。 3 2023/06/09 17:37
- その他(プログラミング・Web制作) pythonでDBのカラム名で取得したオブジェクトの値を表示したい 1 2022/05/13 03:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
fopenでエラーとなる
-
FileCopy時のエラー
-
エラー 'ASP 0115' について
-
ASP.net の OnClientClick
-
WinXPProにVC++6.0をイン...
-
Windowsインストーラー
-
エラー内容について
-
oracleを利用できません。(glob...
-
IIS7.5の設定の仕方
-
ASP.NETで使用しているJavascri...
-
C# try-catch でcatchに飛ばす方法
-
w3c Validator で Not Valid で...
-
CreateObject("Excel.Applicati...
-
Outlookで添付ファイルの有無を...
-
EXECLマクロでshapeがグルーフ...
-
エクセルVBA 宣言Dimの場所
-
ソケット通信で同時受信の制限?
-
ASP.NET GRID VIEWの画像表示
-
Response.Redirectで引数2つの...
-
WindowsでS.M.A.R.Tの情報取得...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C# try-catch でcatchに飛ばす方法
-
FileCopy時のエラー
-
fopenでエラーとなる
-
エラー 'ASP 0115' について
-
エラー 'ASP 0115'
-
EXECLマクロでshapeがグルーフ...
-
IIS7.5の設定の仕方
-
CreateObject("Excel.Applicati...
-
ASP.NETで使用しているJavascri...
-
winsock通信時エラーの回避
-
ASP.NET C# ローカルのパスが呼...
-
VBSからPDFファイルを開きたい...
-
【C#】アップロード時に「アプ...
-
VBA RemoveDuplicatesで「アプ...
-
ASPからWscriptを利用して外部...
-
オーバーフローが発生します
-
ページでエラーが、発生しました。
-
エラーの意味が??
-
このページの状態情報は無効で...
-
Outlookで添付ファイルの有無を...
おすすめ情報