- 334 名前:nobodyさん mailto:age [03/08/25 03:03 ID:???]
- perl、DBIでのトランザクションについてなんですが、
今日のレコード数を持ってきて、それを+1した値で、 新たにINSERTするというときは、 ↓みたいな感じでOKなのでしょうか? (他のユーザが登録している場合でも、値のずれが生じないですよね?) よろしくお願いします。 $dbh->{AutoCommit} = 0; $dbh->{RaiseError} = 1; eval { $val = get_value("SELECT count(*)+1 FROM a WHERE 今日のもの"); $ret = insert_value("INSERT INTO a (foo, ...) values ($val, ...)"); $dbh->commit; }; if ($@) { warn "Transaction aborted because $@"; $dbh->rollback; # undo the incomplete changes }
|

|