我在Microsoft Access中有两个保存的查询,名为Current_Ratio
和Quarterly_Growth_Rates
。这两个保存的查询共享相同的Primary Key
。但它们可能并非都包含相同的数据。如何使用和Inner Join
语句并排显示这些已保存查询的数据?
以下是代码:
con.Open()
Dim cmd3 As OleDbCommand = New OleDbCommand("SELECT * FROM Current_Ratio AS C INNER JOIN Quarterly_Growth_Rates AS G ON (C.Ticker = G.Ticker) AND ((IIF(C.Period = 4, C.Year + 1, C.Year)) = G.Year) AND ((IIF(C.Period = 4, 1, C.Period + 1)) = G.Qtr)", con)
Dim reader As OleDbDataReader = cmd3.ExecuteReader()
Dim da As New DataTable
da.Load(reader)
DataGridViewCalculations.DataSource = da
reader.Close()
con.Close()
我在da.Load(reader)
说错误:
提供商无法确定Double值。例如,刚刚创建了行,Double列的默认值不可用,并且消费者尚未设置新的Double值。
其他信息:
我已经使用大约15种股票的简短数据集成功运行了一段时间。我只是将数据量扩大到大约6,000只股票,现在我遇到了这个问题。
问题在于Current_Ratio查询。如果我运行SELECT * FROM Current_Ratio
,我会收到错误消息。但是,如果我运行SELECT * FROM Quarterly_Growth_Rates