中文字幕av无码不卡免费_蜜臀AV无码精品人妻色欲_亚洲成AV人片在线观看无码不卡_无码专区天天躁天天躁在线

您現在的位置:程序化交易>> 期貨公式>> 金字塔等>> 其他期貨軟件知識>>正文內容

數據庫連接丟失,請教原因 [金字塔]

  • 咨詢內容:


    圖片點擊可在新窗口打開查看此主題相關圖片如下:未命名.jpg
    圖片點擊可在新窗口打開查看

    相關代碼如下:

    public conn,SQL,rs,oHistoryData,cIF,lUpdate,ifoldvol,sholdvol,szoldvol
    set conn = CreateObject("ADODB.connection")
    conn.C
    set rs = createObject("ADODB.recordSet")

     

    Private sub updatedata_m1(cmarket,cstockcode)
          ......

          SQL ="update "&table&" set o="&oHistoryData.open(ggi)&",h="&oHistoryData.high(ggi)&",l="&oHistoryData.low(ggi)&",c="&oHistoryData.close(ggi)&",vol="&oHistoryData.volume(ggi)&" where timemark=cast('"&oHistoryData.date(ggi)&"' as timestamp)"
          conn.execute(SQL)

          ......
    end sub

     

    當調用updatedata_m1時,到conn.execute(SQL) 就出如圖錯誤。而昨天下午調試還運行好好的。

     

  • 金字塔客服: 樓主的sql語句是否正確,并且要確保有數據庫文件才行

     

  • 用戶回復: 以下是引用Leon在2012-4-16 13:26:26的發言:
    樓主的sql語句是否正確,并且要確保有數據庫文件才行

    語句是正確的。對連接字串的定義論壇總是拷不上,也是測試成功的。同樣的代碼也是曾經成功寫過數據的。

    但VBS里總是時不時出怪模怪樣的毛病,頭都大了

     

  • 網友回復: 數據庫你用的什么,盡可能將代碼發的全一些

     

  • 網友回復:

    數據庫用的是Firebird

    下為全部代碼:

    public conn,SQL,rs,oHistoryData,cIF,lUpdate,ifoldvol,sholdvol,szoldvol
    lUpdate=False '在ReportNotify()中是否更新數據庫
    ifoldvol=0
    sholdvol=0
    szoldvol=0
    set conn = CreateObject("ADODB.connection")
    conn.C
    set rs = createObject("ADODB.recordSet")
    conn.open  '本來設置的是需要才打開,但出了問題后就放在這里打開,然后在窗體的UNLOAD中關閉,不過問題依舊

    sub Application_VBAStart()
      Call Application.SetTimer(1,0)
      TransData.show
     
    end sub

    Sub MARKETDATA_ReportNotify(RD)
      if not lUpdate then exit sub
      select case rd.label
        case cIF
          if rd.volume=ifoldvol then exit sub
          SQL ="insert into ZJIF00B1(timemark,p,vol) values (cast('"&rd.date&"' as timestamp),"&rd.newprice&","&(rd.volume-ifoldvol)&")"
          conn.execute(sql)
          ifoldvol=rd.volume
        case "399001"
          if rd.volume=szoldvol then exit sub
          SQL ="insert into SZ399001B1(timemark,p,vol) values (cast('"&rd.date&"' as timestamp),"&rd.newprice&","&(rd.volume-ifoldvol)&")"
          conn.execute(sql)
          szoldvol=rd.volume
        case "000001"
          if rd.volume=sholdvol then exit sub
          SQL ="insert into SH000001B1(timemark,p,vol) values (cast('"&rd.date&"' as timestamp),"&rd.newprice&","&(rd.volume-ifoldvol)&")"
          conn.execute(sql)
          sholdvol=rd.volume
      END SELECT   
    end sub

    Private Sub TransData_cmdStart_click()
      if TransData_cmdStart.caption="Start Transfer" then
        Call Application.SetTimer(1,0)
        TransData_cmdStart.caption="End Transfer" 
        'conn.open 
        '更新主力合約
        call getIf(cIF)
        SQL ="update maincontract set stockcode='"&cIF&"' where market='ZJ'"
        conn.execute(SQL)
       
        '首先補數據
        call Transfer()
       
        '二次補數據,因為第一次耗時多,造成部分實時數據又未補上
        call Transfer()

        '注冊行情,開始自動寫數據
        call marketdata.RegReportNotify(cIF,"ZJ")
        call marketdata.RegReportNotify("399001","SZ")
        call marketdata.RegReportNotify("000001","SH")
        lUpdate=True
        '設置觸發器
        Call Application.SetTimer(1,8000)
       

      else
        '取消品種注冊
        call marketdata.unRegReportNotify(cIF,"ZJ")
        call marketdata.unRegReportNotify("399001","SZ")
        call marketdata.unRegReportNotify("000001","SH")
        lUpdate=False
        '取消觸發器
        Call Application.SetTimer(1,0)
        'conn.close
        TransData_cmdStart.caption="Start Transfer"
      end if
     
    end sub


    Private sub Transfer()
      '獲得數據庫已更新時間
      '更新M1
      call updatedata_m1("SZ","399001")
      call updatedata_m1("SH","000001")
      call updatedata_m1("ZJ",cIF) 
     
      '更新筆
      if time()>#09:30:00# then
        call updatedata_B1("SZ","399001")
        call updatedata_B1("SH","000001")
      end if
      if time()>#09:15:00# then
        call updatedata_B1("ZJ",cIF) 
      end if
    end sub

    Private sub updatedata_m1(cmarket,cstockcode)
      dim lasttime,table,ggi,gi
      ggi=0
      table=cmarket&cstockcode&"M1"
      if cmarket="ZJ" then table="ZJIF00M1"
      call getdatatime(table,lasttime)
      set oHistoryData = marketdata.GethistoryData(cstockcode,cmarket,0) 
      if not isnull(lasttime) then
        for gi=1 to oHistoryData.count-1 
          if oHistoryData.date(gi)>=lasttime then
            ggi=gi
            exit for
          end if
        next
        if ggi=0 then exit sub
        if oHistoryData.date(ggi)<dateadd("s",40,lasttime) then
          SQL ="update "&table&" set o="&oHistoryData.open(ggi)&",h="&oHistoryData.high(ggi)&",l="&oHistoryData.low(ggi)&",c="&oHistoryData.close(ggi)&",vol="&oHistoryData.volume(ggi)&" where timemark=cast('"&oHistoryData.date(ggi)&"' as timestamp)"
          conn.execute(SQL)
          ggi=ggi+1   
        end if
      end if
      if ggi<oHistorydata.count-1 then
        for gi=ggi to oHistoryData.count-1
          SQL ="insert into "&table&"(timemark,o,h,l,c,vol) values (cast('"&oHistoryData.date(gi)&"' as timestamp),"&oHistoryData.open(gi)&","&oHistoryData.high(gi)&","&oHistoryData.low(gi)&","&oHistoryData.close(gi)&","&oHistoryData.volume(gi)&")"
          conn.execute(sql)
        next
      end if
    end sub

    Private sub miniupdatedata_m1(cmarket,cstockcode)
      dim lasttime,table,gi,ggi,stockcode
      ggi=0
      table=cmarket&cstockcode&"M1" 
      stockcode=cstockcode
      '從newtime表中查最新數據
      if cmarket="ZJ" then
        stockcode="IF00"
        table="ZJIF00M1"
      end if
     
      SQL="SELECT timemark as tlast FROM newtime where stockcode='"&stockcode&"' and cyc='M1'"
      rs.open SQL,conn,0,1
      lasttime=rs.Fields("tlast")
      rs.close
      set oHistoryData = marketdata.GethistoryData(cstockcode,cmarket,0) 
      for gi=oHistoryData.count-1 to 0 step -1
        'oHistoryData.date(gi)是否會有條記錄與lasttime完全一致?
        if oHistoryData.date(gi)<=lasttime then
          ggi=gi
          exit for
        end if
      next
      for gi=ggi to oHistoryData.count-1 
        if oHistoryData.date(gi)<dateadd("s",40,lasttime) then
          SQL ="update "&table&" set o="&oHistoryData.open(gi)&",h="&oHistoryData.high(gi)&",l="&oHistoryData.low(gi)&",c="&oHistoryData.close(gi)&",vol="&oHistoryData.volume(gi)&" where timemark=cast('"&oHistoryData.date(gi)&"' as timestamp)"
        else
          SQL ="insert into "&table&"(timemark,o,h,l,c,vol) values (cast('"&oHistoryData.date(gi)&"' as timestamp),"&oHistoryData.open(gi)&","&oHistoryData.high(gi)&","&oHistoryData.low(gi)&","&oHistoryData.close(gi)&","&oHistoryData.volume(gi)&")"
        end if
        conn.execute(SQL)
      next  
    end sub

    Private sub updatedata_B1(cmarket,cstockcode)
      dim lasttime,table,ggi,gi
      ggi=0
      table=cmarket&cstockcode&"B1"
      if cmarket="ZJ" then table="ZJIF00B1"
      call getdatatime(table,lasttime) 
      set oHistoryData= marketdata.GetMinuteData(cstockcode,cmarket)
     
      if not isnull(lasttime) then
        for gi=oHistoryData.count-1 to 1  step -1
          if oHistoryData.date(gi)<=lasttime then
            ggi=gi
            exit for
          end if
        next
      end if
     
      if ggi<oHistorydata.count-1 then
        if ggi=0 then
          SQL ="insert into "&table&"(timemark,p,vol) values (cast('"&oHistoryData.date(0)&"' as timestamp),"&oHistoryData.newprice(0)&","&oHistoryData.volume(0)&")"
          conn.execute(sql)
          ggi=ggi+1
        end if
        for gi=ggi to oHistoryData.count-1
          SQL ="insert into "&table&"(timemark,p,vol) values (cast('"&oHistoryData.date(gi)&"' as timestamp),"&oHistoryData.newprice(gi)&","&(oHistoryData.volume(gi)-oHistoryData.volume(gi-1))&")"
          conn.execute(sql)
        next
      end if
      select case cmarket
        case "SH"
          sholdvol=oHistoryData.volume(oHistoryData.count-1)
        case "SZ"
          szoldvol=oHistoryData.volume(oHistoryData.count-1)
        case "ZJ"
          ifoldvol=oHistoryData.volume(oHistoryData.count-1)
      END SELECT 
    end sub

    private sub TransData_load()
        call marketdata.unRegReportNotify(cIF,"ZJ")
        call marketdata.unRegReportNotify("000001","SH")
        call marketdata.unRegReportNotify("399001","SZ")
        lUpdate=False
        '取消觸發器
        Call Application.SetTimer(1,0) 

       
       
    end sub

    private sub TransData_unload()
        call marketdata.unRegReportNotify(cIF,"ZJ")
        call marketdata.unRegReportNotify("000001","SH")
        call marketdata.unRegReportNotify("399001","SZ")
        lUpdate=False
        '取消觸發器
        Call Application.SetTimer(1,0) 
        'if TransData_cmdStart.caption="End Transfer" then
          conn.close
        'end if
        set conn=nothing
        set rs=nothing
       
    end sub


    Sub GetIF(byref MainIF)
      '得到期指主力合約
      Dim MaxVolume,count,i,report1
      MaxVolume=0
      '得到市場所有品種
      Count = MarketData.GetReportCount("ZJ")
      For i = 0 To Count-1
        Set Report1 = MarketData.GetReportDataByIndex("ZJ",i)
        if Left(Report1.Label,2) = "IF" Then
          '只處理有效合約
          if Right(Report1.Label,2) >= "01" And Right(Report1.Label,2) <= "12" Then
            If Report1.Volume > MaxVolume Then
              MainIF = Report1.Label
              MaxVolume = Report1.Volume
            End if
          end if
        End if
      Next
    End Sub

    sub getdatatime(ctmptable,ByRef tlasttime)
      SQL="SELECT MAX(timemark) as tlast FROM "&ctmptable
      rs.open SQL,conn,0,1
      tlasttime=rs.Fields("tlast")
      rs.close
    end sub

    Sub APPLICATION_Timer(ID)
      if ID=1 then
        if time()<#09:14:59# or (time()>#11:30:59# and time()<#12:59:59#) or time()>#15:15:59# or weekday(date())=1 or weekday(date())=7 then  '非交易時間
          exit sub
        end if
        call miniupdatedata_m1("SZ","399001")
        call miniupdatedata_m1("ZJ",cIF)
        call miniupdatedata_m1("SH","000001")
      end if      
    End Sub


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內容
中文字幕av无码不卡免费_蜜臀AV无码精品人妻色欲_亚洲成AV人片在线观看无码不卡_无码专区天天躁天天躁在线

性欧美xxxx视频在线观看| 久久人人爽人人爽爽久久| 国产精品私房写真福利视频| 久久久精品国产免费观看同学| 亚洲中午字幕| 一区二区三区成人| 亚洲美女免费视频| 亚洲乱码国产乱码精品精98午夜| 一区一区视频| 经典三级久久| 国产在线视频不卡二| 国产日韩精品一区二区三区| 国产精品国产亚洲精品看不卡15| 欧美日韩ab片| 欧美日本免费| 欧美三级不卡| 国产精品高清一区二区三区| 国产精品二区二区三区| 国产精品va| 国产精品高精视频免费| 国产精品视频yy9099| 欧美三级在线视频| 国产精品v欧美精品∨日韩| 欧美视频一区二区在线观看| 欧美视频在线不卡| 国产乱码精品1区2区3区| 国产伦精品一区二区三区四区免费| 国产精品一区二区久久精品 | 亚洲女人天堂av| 亚洲欧美在线免费| 久久福利资源站| 久久中文久久字幕| 欧美不卡福利| 欧美三区在线视频| 国产精品毛片a∨一区二区三区|国| 国产精品三区www17con| 国产综合久久久久久鬼色| 狠狠色伊人亚洲综合网站色| 亚洲二区免费| 亚洲精选中文字幕| 亚洲在线观看免费视频| 欧美在线你懂的| 久久久噜噜噜久久中文字幕色伊伊| 美女精品网站| 欧美日韩123| 国产日韩欧美不卡在线| 在线欧美亚洲| 日韩亚洲欧美高清| 欧美伊人精品成人久久综合97| 久久久久久自在自线| 欧美电影免费观看网站| 国产精品高潮呻吟| 国产字幕视频一区二区| 亚洲欧洲日本专区| 亚洲欧美日韩视频二区| 久久婷婷av| 欧美人与禽性xxxxx杂性| 国产精品视频网| 亚洲电影激情视频网站| 亚洲视频图片小说| 久久亚洲高清| 国产精品劲爆视频| 极品尤物一区二区三区| 日韩视频二区| 久久久www| 欧美视频成人| 伊人夜夜躁av伊人久久| 亚洲神马久久| 久久天天躁狠狠躁夜夜av| 欧美日韩一区国产| 好吊妞**欧美| 在线视频欧美日韩| 久久天天躁狠狠躁夜夜爽蜜月 | 国产精品每日更新在线播放网址| 好男人免费精品视频| 亚洲精品中文字幕在线| 欧美亚洲一区二区在线| 免费在线观看精品| 国产精品一区二区在线观看网站| 亚洲高清不卡在线| 午夜欧美精品| 欧美日韩亚洲不卡| 在线成人www免费观看视频| 亚洲视频成人| 欧美高清视频一区二区三区在线观看| 国产伦精品一区二区| 亚洲乱码国产乱码精品精天堂 | 欧美巨乳在线| 在线看国产日韩| 欧美一区视频在线| 欧美天天在线| 最新日韩中文字幕| 久久久久久久网站| 国产精品亚洲网站| 亚洲毛片一区| 欧美aⅴ99久久黑人专区| 国产日产亚洲精品系列| 在线一区免费观看| 欧美黄色一级视频| 伊人久久噜噜噜躁狠狠躁| 亚洲免费在线观看| 欧美理论在线播放| 亚洲电影成人| 久久伊伊香蕉| 国产综合色在线| 午夜精品福利电影| 欧美性久久久| 一本久久a久久免费精品不卡| 欧美va亚洲va香蕉在线| 亚洲大胆av| 久久嫩草精品久久久久| 国内精品视频在线观看| 欧美一区二区三区在线播放| 国产精品久久久久久久免费软件| 99在线精品视频| 欧美人妖另类| 日韩一级免费观看| 欧美日韩八区| 一本色道久久99精品综合| 欧美日韩 国产精品| 日韩天堂av| 欧美日韩免费高清| 日韩一级黄色大片| 欧美日韩亚洲成人| 一二三区精品福利视频| 欧美日韩精品一本二本三本| 99re66热这里只有精品4| 欧美绝品在线观看成人午夜影视 | 在线看日韩av| 美女日韩欧美| 亚洲欧洲精品天堂一级| 欧美国产亚洲另类动漫| 亚洲精品一区二区三区99| 欧美精品一区二区三区蜜桃| 亚洲精品乱码久久久久久日本蜜臀 | 欧美成人精品在线观看| 亚洲欧洲日产国产综合网| 欧美美女bb生活片| 一本久道久久综合婷婷鲸鱼| 欧美视频在线观看一区二区| 午夜国产欧美理论在线播放| 国内一区二区三区在线视频| 蜜臀99久久精品久久久久久软件 | 亚洲免费视频一区二区| 国产欧美一区二区三区久久| 久久国产精品99国产| 亚洲成人在线视频播放| 欧美成人免费在线视频| 99re8这里有精品热视频免费 | 欧美日本三区| 亚洲女与黑人做爰| 国产日韩一区欧美| 久久亚洲国产精品一区二区| 亚洲福利视频免费观看| 欧美日韩国产在线观看| 亚洲女与黑人做爰| 伊人伊人伊人久久| 欧美日韩一区二区三区四区五区| 亚洲免费网址| 亚洲国产成人久久| 欧美性猛交xxxx免费看久久久 | 欧美激情精品久久久久| 亚洲午夜久久久| 国产一区二区三区四区在线观看| 欧美成年人视频网站欧美| 亚洲一级在线观看| 国内精品久久久久久久影视蜜臀| 欧美大片va欧美在线播放| 亚洲婷婷在线| 精品成人免费| 国产精品福利久久久| 久久久久国内| 日韩视频在线永久播放| 国产午夜精品久久久久久久| 裸体一区二区三区| 亚洲一区二区三区四区视频| 极品少妇一区二区三区精品视频| 欧美日韩国产综合网| 久久国产欧美精品| 亚洲精品孕妇| 国产亚洲欧美另类中文| 欧美精品在线免费播放| 欧美一区国产在线| 亚洲巨乳在线| 国产在线精品二区| 欧美三级欧美一级| 玖玖综合伊人| 欧美一区二区三区喷汁尤物| 亚洲免费福利视频| 国产综合久久久久久鬼色| 欧美午夜片在线免费观看| 久久―日本道色综合久久| 亚洲私拍自拍| 亚洲国产日本| 国产一区二区在线免费观看| 欧美日韩亚洲激情| 欧美sm极限捆绑bd| 久久av一区二区| 亚洲视频欧美视频| 亚洲欧洲另类|