MSDE FunClub
Microsoft Data Engine FunClub
MSDE技術者向けメーリングリスト過去ログ[1118]番
 
[TOP]>[MSDE技術者向けメーリングリスト過去ログ(1118番)]>[ウィンドを閉じる]
 
SQLServer2005時代でも
開発の基本は T-SQL
上巻で T-SQL の基礎作り
 
SQLServer2005時代でも
運用の基本はバックアップ
下巻でバックアップ手法を学びましょう
PASSJ人気コンテンツで学んだ後は下巻でさらなる学習を!
 
ウィンドを閉じる
MSDE/SQLServer FAQ
MSDE / MSDE2000 
技術情報サポート
初心者向け
メーリングリスト
過去ログの表示
技術者向け
メーリングリスト
過去ログの表示
メーリングリスト
活動状況の
表示
MSDE TOP メニュー
MSDEトップメニューに移動します
 

 
Re: ネットワークエラーについて

Date: Thu, 20 Feb 2003 15:37:01 +0900
From: "よしまる" <who@sub.example.jp>



よしまるです。
ネットワークエラーについて調査を進めたのですが、
�,�SELECT文は成功しているのですが�△�DELETE文の
発行時にConnectionエラーとなります。
これは、一旦接続されているコネクションが途中で切断され
たと思える動きです。
そんな事がありえるのでしょうか?
どなたかお知恵を授けて頂けないでしょうか?

funcDBExecuteの中では掻い摘むと以下の通りです。
-----< funcDBExecuteの内容 START >-----
    If (objCn_.State Or adStateOpen) = 0 Then ''コネクションが接続していない
場合
                                              ''は、エラーとする。
        Exit Function
    End If
    objCn_.Execute strSQL_, lngCount_, adCmdText    ''SQLの実行

-----< funcDBExecuteの内容 ここまで >-----

-----< 障害発生のソース START >-----
�� strSQL(0) = "SELECT MAX(日時) FROM Cテーブル (TABLOCK HOLDLOCK)"
    blnRtn = funcDBExecute(mconChild, strSQL(0), lngCnt, True, blnDeadLock_)

    Do While (blnRtn = True)
        strSQL(0) = "DELETE FROM Cテーブル" & _
                    " WHERE 日時 BETWEEN '" & strDttm & "0000' AND " & _
                                           "'" & strDttm & "0559' "
        strSQL(1) = "DELETE FROM Cテーブル" & _
                    " WHERE 日時 BETWEEN '" & strDttm & "0600' AND " & _
                                           "'" & strDttm & "1159' "
        strSQL(2) = "DELETE FROM Cテーブル" & _
                    " WHERE 日時 BETWEEN '" & strDttm & "1200' AND " & _
                                           "'" & strDttm & "1759' "
        strSQL(3) = "DELETE FROM Cテーブル" & _
                    " WHERE 日時 BETWEEN '" & strDttm & "1800' AND " & _
                                           "'" & strDttm & "2359' "

        For intIdx = LBound(strSQL) To UBound(strSQL)
                                                '' Cテーブルを削除する
��         blnRtn = funcDBExecute(mconChild, strSQL(intIdx), lngCnt, True,
blnDeadLock_)

            If blnDeadLock_ Then                '' デッドロック発生
                Call subDeadLockAlm(C_MSG_削除リトライ, "Cテーブル", _
                                    Me.Name, "funcScan01MDelete")
            End If
            If blnRtn = False Then
                On Error Resume Next            '' エラーを無視する
                If mconChild.Errors.Count > 0 Then

=====ここでエラーメッセージが出力される
Call subPutCommLogTime("vbpDatGetOnline.frmDatGetOnline.funcScan01MDelete "
& _
                       " Number=" & mconChild.Errors(0).Number & _
                       " Description =" & mconChild.Errors(0).Description)

                End If
                On Error GoTo skip       '' エラーをトラップする
            End If
                                         '' トランザクションログ切り捨て処理
            Call subLogTruncateKyk(mconChild, objClass.KyokuNo)
            If blnRtn = False Then Exit For     ''
        Next intIdx

        If strDttm >= strDttmEnd_ Then Exit Do  '' 削除終了日まで終了

        strDttm = Format$(DateAdd("d", 1, Mid$(strDttm, 1, C_LEN_YEAR) & "/"
& _
                                          Mid$(strDttm, 5, C_LEN_MON) & "/"
& _
                                          Mid$(strDttm, 7, C_LEN_DAY) & " "
& _
                                          "00:00:00"), _
                                          "YYYYMMDD")
    Loop
    funcScan01MDelete = blnRtn                  '' 処理結果
    Exit Function
skip:
                                                '' エラーメッセージを表示す
る
    Call ErrorMsgBoxOpen(App.EXEName, Me.Name, "funcScan01MDelete")
End Function

-----< 障害発生のソース ここまで >-----



[MSDE/SQLServerに関して、今、どんなことにお困りですか?]
よろしければお困りの内容を、電子メールで教えて下さい。
質問を電子メールで作成する


[ウィンドを閉じる]

[MSDE/SQLServer FAQ ]

[MSDE / MSDE2000 技術サポート情報一覧]

MSDE TOP ページに移動する

 
 
 
 
 
 
 
MSDE FunClubに関するご意見・ご要望等ございましたら、
msdefun@horikawa.ne.jp までご連絡下さい。
MSDEを始めとする各種データベースシステムの開発、コンサルタントに関するご要望等は、
msdedev@horikawa.ne.jp までご連絡下さい。