出来るのだASP Q&A掲示板(過去LOG)
訪問数 52046
昨日 889
今日 776 【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。 |
![]() ![]() ![]() ![]() ![]() |
![]() ![]() |
![]() ![]() ![]() |
[4287] レコードを連続して更新できません。 |
投稿者:snoopさん 2004/05/18 10:47:02 |
こんにちは、snoopと申します。 早速ですが、いまFor文を使って任意の回数分の update文を実行したいと思っています。 しかし、1回目の更新は実行されるのですが、 それ以降が実行されません。 ソースはおそらくあっていると思うのですが、 何度も試行錯誤してもうまくいかないので どなたか教えていただけませんか? ・テーブル holi_Code 日付コード テキスト型 主キー holi_Date 日付 テキスト型 ・ソース : 省略 : tmp = Split(koshinDay, ",") resultTmp = Split(result, ",") 'トランザクションの開始 ObjConn.BeginTrans For i=0 To Ubound(tmp) If Len(resultTmp(i+1)) <> 8 Then Err.Number = 1 Exit For End If StrSQL = "update HOLIDAY set " StrSQL = StrSQL & " holi_Date = '" & resultTmp(i+1) & "'" StrSQL = StrSQL & " where holi_Code = '" & tmp(i) & "'" ObjConn.Execute(StrSQL) Next 'トランザクション中にエラーがないかの確認と各処理 'エラーがない場合、コミット処理 If Err.Number = 0 then : : 省略 : よろしくお願いします。 |
[4289] Re:レコードを連続して更新できません。 |
投稿者:YasNet(管理人)さん 2004/05/18 12:29:53 |
こんにちは YasNet(管理人)です。 On Error Resume Next使ってますか? 使っているなら、一度コメントアウトすると 原因が判明するかもしれませんよ。 何度か文面を読み直したのですが どう更新出来ないのか、どんな状態なのかが不明です。 状態は、2回目が更新できないとありますが・・・ 画面上どうなっているのでしょうか・・・ もう少し情報頂けませんかぁ〜 それでは 失礼致します。 > こんにちは、snoopと申します。 > > 早速ですが、いまFor文を使って任意の回数分の > update文を実行したいと思っています。 > しかし、1回目の更新は実行されるのですが、 > それ以降が実行されません。 > ソースはおそらくあっていると思うのですが、 > 何度も試行錯誤してもうまくいかないので > どなたか教えていただけませんか? > > ・テーブル > holi_Code 日付コード テキスト型 主キー > holi_Date 日付 テキスト型 > > ・ソース > : 省略 > : > tmp = Split(koshinDay, ",") > resultTmp = Split(result, ",") > > 'トランザクションの開始 > ObjConn.BeginTrans > > For i=0 To Ubound(tmp) > If Len(resultTmp(i+1)) <> 8 Then > Err.Number = 1 > Exit For > End If > StrSQL = "update HOLIDAY set " > StrSQL = StrSQL & " holi_Date = '" & resultTmp(i+1) & "'" > StrSQL = StrSQL & " where holi_Code = '" & tmp(i) & "'" > ObjConn.Execute(StrSQL) > Next > > 'トランザクション中にエラーがないかの確認と各処理 > 'エラーがない場合、コミット処理 > If Err.Number = 0 then > : > : 省略 > : > > よろしくお願いします。 |
[4290] Re:レコードを連続して更新できません。 |
投稿者:snoopさん 2004/05/18 13:43:15 |
説明不足ですいません。 > On Error Resume Next使ってますか? 使っていません。 更新したい情報は、 > > ・テーブル(HOLIDAY) > > holi_Code 日付コード テキスト型 主キー > > holi_Date 日付 テキスト型 holi_Codeをキーにして該当するレコードを見つけて holi_Dateの値を変更します (例) ・tmpには変更するレコードを探すためのholi_Codeの値が入っています(例:41,42,43) ・resultTmpには、新しいholi_Dateの値。(例:04/05/18,04/05/19,04/05/20) > > tmp = Split(koshinDay, ",") //holi_Code > > resultTmp = Split(result, ",") //holi_Date(04/05/18) tmpの値の個数分続ける。(上の例だと3回繰り返す) > > For i=0 To Ubound(tmp) > > StrSQL = "update HOLIDAY set " > > StrSQL = StrSQL & " holi_Date = '" & resultTmp(i+1) & "'" > > StrSQL = StrSQL & " where holi_Code = '" & tmp(i) & "'" > > ObjConn.Execute(StrSQL) > > Next これを実行すれば、3つのレコードの値を変更できるはずなのですが、 For文においてiが0のとき(1回目)は、SQLが実行されてテーブルの値が変更されるのですが、iが1(2回目)、iが2(3回目)がエラーにはならないのですがテーブルの値が変更されず、1つのレコードにしか変更が反映されません。 処理後の画面は更新完了と表示し、正常に動いています。 このような説明で伝わればいいのですが・・・。 よろしくお願いします > こんにちは YasNet(管理人)です。 > > On Error Resume Next使ってますか? > 使っているなら、一度コメントアウトすると > 原因が判明するかもしれませんよ。 > > 何度か文面を読み直したのですが > どう更新出来ないのか、どんな状態なのかが不明です。 > 状態は、2回目が更新できないとありますが・・・ > > 画面上どうなっているのでしょうか・・・ > もう少し情報頂けませんかぁ〜 > > それでは 失礼致します。 > > > こんにちは、snoopと申します。 > > > > 早速ですが、いまFor文を使って任意の回数分の > > update文を実行したいと思っています。 > > しかし、1回目の更新は実行されるのですが、 > > それ以降が実行されません。 > > ソースはおそらくあっていると思うのですが、 > > 何度も試行錯誤してもうまくいかないので > > どなたか教えていただけませんか? > > > > ・テーブル > > holi_Code 日付コード テキスト型 主キー > > holi_Date 日付 テキスト型 > > > > ・ソース > > : 省略 > > : > > tmp = Split(koshinDay, ",") > > resultTmp = Split(result, ",") > > > > 'トランザクションの開始 > > ObjConn.BeginTrans > > > > For i=0 To Ubound(tmp) > > If Len(resultTmp(i+1)) <> 8 Then > > Err.Number = 1 > > Exit For > > End If > > StrSQL = "update HOLIDAY set " > > StrSQL = StrSQL & " holi_Date = '" & resultTmp(i+1) & "'" > > StrSQL = StrSQL & " where holi_Code = '" & tmp(i) & "'" > > ObjConn.Execute(StrSQL) > > Next > > > > 'トランザクション中にエラーがないかの確認と各処理 > > 'エラーがない場合、コミット処理 > > If Err.Number = 0 then > > : > > : 省略 > > : > > > > よろしくお願いします。 |
[4291] Re:レコードを連続して更新できません。 |
投稿者:YasNet(管理人)さん 2004/05/18 15:09:47 |
こんにちは YasNet(管理人)です。 う〜ん、聞くだけ聞いてまともな答えが出せずにすみません。 ObjConn.Execute(StrSQL)の変わりに StrSQLをresponse.write するのが手っ取り早くないですかねぇ〜 SQLが期待値と違うのではないでしょうか・・・ それでは 失礼致します。 |
TreeBBS For ASP V.0.1.3 |