版主,你好。请教能否从金字塔中,把历史数据直接导入到MYSQL吗,能否给一个简单的例子,谢谢
'使用自定义函数将最后周期的开盘、最高、最低、收盘价等传到VBA后台,后台使用数据库操作,将数据保存。
'将行情数据存入数据库
Sub SaveStockToDB(stockdate1,stocktime1,stockopen1,stockhigh1,stocklow1,stockclose1)
Dim strSql
Set adoConn=CreateObject("Adodb.Connection")
adoConn.Open "Provider=MicroSoft.Jet.OLEDB.4.0;Data Source=D:\UserData.mdb"
strSql="Insert Into tblGuZhi (stockdate,stocktime,stockopen,stockhigh,stocklow,stockclose)"
strSql=strSql & " Values ('" & stockdate1 & "','" & stocktime1 & "','" & stockopen1 & "','" & stockhigh1 &"','" & stocklow1
strSql=strSql & "','" & stockclose1 &"')"
AdoConn.Execute(strSql)
End Sub
'我这里使用了Access数据库,MySql应该也是类似,只是连接字符串不同。
'这是即时行情数据每周期结束就保存到数据库的方法。
'保存历史数据到数据库
Sub SaveHisToAccess()
dim i
Dim strSql
Set adoConn=CreateObject("Adodb.Connection")
adoConn.Open "Provider=MicroSoft.Jet.OLEDB.4.0;Data Source=D:\UserData.mdb"
Set History = marketdata.GetHistoryData(VBA_Code,VBA_Market,0) '1分钟K线数据
'Cyctype 周期类型,0 1分钟 1 5分钟 2 15分钟 3 30分钟 4 60分钟 5日线 6周线 7月线 8年线 9多日线 10分笔成交
'11多小时线 12多秒线 13多分钟线 14季度线 15半年线 16节气线 17 3分钟 18 10分钟 19 多笔线
For i = 1 to HistroyData.count-1
C1=History.Close(i)
strSql="Insert Into tblGuZhi (CloseData)"
strSql=strSql & " Values (" & CStr(C1) &")"
AdoConn.Execute(strSql)
Next
End Sub
'保存历史数据到数据库
Sub SaveHisToAccess()
dim i
Dim strSql
Set adoConn=CreateObject("Adodb.Connection")
adoConn.Open "Provider=MicroSoft.Jet.OLEDB.4.0;Data Source=D:\UserData.mdb"
Set History = marketdata.GetHistoryData(VBA_Code,VBA_Market,0) '1分钟K线数据
'Cyctype 周期类型,0 1分钟 1 5分钟 2 15分钟 3 30分钟 4 60分钟 5日线 6周线 7月线 8年线 9多日线 10分笔成交
'11多小时线 12多秒线 13多分钟线 14季度线 15半年线 16节气线 17 3分钟 18 10分钟 19 多笔线
For i = 1 to HistroyData.count-1
C1=History.Close(i)
strSql="Insert Into tblGuZhi (CloseData)"
strSql=strSql & " Values (" & CStr(C1) &")"
AdoConn.Execute(strSql)
Next
End Sub
应该从0开始把,data字符多余
For i = 0 to Histroy.count-1