• 締切済み

ASPでデータベースの更新をかけるには

ASPでデータベースの更新をかけるには どのようなプログラムを書けばいいか教えてください 言語はVBScriptを使用しています

みんなの回答

  • maro
  • ベストアンサー率47% (95/199)
回答No.3

更新することができないというのは何かエラーがでるのでしょうか? rs.Field("フィールド名").Value = Request.Form("フィールド名") ではいかがでしょう? フォームからのデータはちゃんと受け取っていますか? レコードセットをアップデートするより、SQL文で"update テーブル名 set フィールド名=value where..."とした方が処理が速いのではないでしょうか?

  • selenity
  • ベストアンサー率41% (324/772)
回答No.2

Q=5653,#1の回答に対する補足です。 たしか、ActiveServerPageって1つのレコードセットしか同時に 開けなかったと思います。 # いま、手元に資料かないため細かい点は不明です。 多分「現在SQLを使用して必要なフィールドを抽出し、、、」と あるのでここで既に1つADODB.Recordsetが開いています。 このタイミングで必要な情報(Primary Keyの値等)を変数に待避 しておき、一度ADODB.Recordsetを閉じます。 この後改めて、カーソルタイプを書き込みができるモードに 設定すれば、書き込めないでしょうか? または、データベース内のストアドプロシージャ等で対処できないでしょうか?

  • selenity
  • ベストアンサー率41% (324/772)
回答No.1

まず、データベース上の何を更新したいのかが不明なので何ともいえませんが、 Active Server Pageプログラミング関連の本を読んでActive Server Pageと データベースの両者の操作方法を覚えることをお薦めします。 MS-AccessのVBA(Visual Basic for Applications)で DAO(Data Access Objedt)やADO(ActiveX Data Object)を 利用したコードと似ています。 または、いかに記してある「Users Group」にASPのMLもありますので こちらもご覧ください。

参考URL:
http://www.users.gr.jp/ml/
abeyu
質問者

補足

データベースに登録された内容を変更するASPファイルを作りたいのですが・・・ 現在 SQLを使用して必要なフィールドを抽出し、 RecordsetをOPENしています サンプル集などを見るとその後に rs.Field("フィールド名") = Request.Form("フィールド名")・・・ 最後に  rs.Update と書いてあるのでその通りにやってみたのですが 更新することができません この場合何が原因なんでしょうか?

関連するQ&A