重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

ASP3.0 IIS5.0
ASP初心者です。初心者の素朴な疑問なんですが、
ASPで、例えばWebページから入力された情報を、
Accessなどのデータベースに書き込むとき、
排他処理って必要ですよね?
一般的にどうやるのでしょうか?
Application変数を使うのでしょうか?
データベース自体に排他制御する機能があるのですか?
よろしくお願いします。

A 回答 (1件)

一般的にはADO ConnectionのTransactionを使うと思います。



On Error Resume Next

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open 接続文字列hoge

Conn.BeginTrans

Err.Clear

Conn.Execute("INSERT INTO hoge VALUES(1, 'aaa')")
If Err.Number <> 0 Then
Conn.RollBackTrans
Else
Conn.CommitTrans
End If

Conn.Close
Set Conn = Nothing

On Error Goto 0

みたいな感じですかね。

<%@ TRANSACTION=Required %>と記述する方法もありますが、こちらは
使用した事がないので、解答は別の方にお任せします(w

参考URL:http://www.microsoft.com/japan/developer/library …
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
トランザクションという言葉が私にはいまいち
ピンと来ないのですが、
ある一連の処理があって、
それを後から実行またはキャンセルできるものと
考えればいいのでしょうか?
記述していただいたスクリプトは参考になりそうです。
一ヶ所だけ、教えていただきたいのですが、
On Error Goto 0 というのは、
要するにスクリプトを終了する事なのでしょうか?
よろしくお願いします。

お礼日時:2002/10/31 18:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!