我试图从使用vba的SQL查询中获取一些数据,但当我尝试运行代码时,它会给我一个类型不匹配错误。有人能帮忙吗
Sub Get_Rowkey()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim DBresults As ADODB.Recordset
Dim sqlquery As String, wsData As Worksheet, Datasht As Worksheet
Dim elr As Long
Dim lRow As Long
Set DBresults = New ADODB.Recordset
Set wsData = Worksheets("Main")
Set Datasht = Worksheets("Backend")
lRow2 = Datasht.Cells(Rows.Count, 2).End(xlUp).Row
elr = Datasht.Cells(Rows.Count, 3).End(xlUp).Row
If lRow2 > 1 Then
Call createconn
sqlquery = "SELECT vyc.object_id, vyc.rowkey, el.instrument, i.ccy, vyc.timezone, vyc.asof, vyc.snaptime, vp.rate as Mid, vp.bid, vp.ask, vp.updatetime" & vbNewLine & _
"from val_yield_curves vyc" & vbNewLine & _
"join val_yc_def_elements el on el.pkey = valuations_yieldcurves.getCurveDefinitionKey(vyc.asof, vyc.object_id)" & vbNewLine & _
"join (SELECT asof, curve, instrument, rate, quality, source, updatetime, bid, ask from val_prices_interestrates" & vbNewLine & _
"union SELECT asof, curve, instrument, rate, quality, source, updatetime, bid, ask from val_prices_basisswaps" & vbNewLine & _
"union SELECT asof, curve, instrument, rate, quality, source, updatetime, bid, ask from val_prices_oisrates" & vbNewLine & _
"union SELECT asof, curve, instrument, rate, quality, source, updatetime, bid, ask from val_prices_fx)" & vbNewLine & _
"vp on el.instrument = vp.instrument and vp.asof = vyc.asof and vp.curve = vyc.rowkey" & vbNewLine & _
"join (select pkey, symbol from val_mds_sources) vms on vms.pkey = vp.source" & vbNewLine * _
"join instruments i on i.pkey = el.instrument" & vbNewLine & _
"where vyc.asof in '12Oct2020'" & vbNewLine & _
"and vyc.timezone in 'L1200'" & vbNewLine & _
"and vyc.object_id like '%FXSpot%'" & vbNewLine & _
"ORDER BY vp.updatetime"`enter code here`
''sqlquery = Left(sqlquery, Len(sqlquery) - 1) & ")"
DBresults.Open sqlquery, DBConn, adOpenDynamic
考虑将冗长、复杂的SQL保存在一个文本文件中,包含所有必要的换行符和空格格式,这有助于提高可读性和可维护性。您甚至可以捕捉到语法错误,比如在括号中的元素中没有包装(尽管一个项目列表应该替换为
=
)。
然后,以字符串形式读入Excel,无需任何混乱的连接或引用标点符号。
SQL(另存为. sql文件)
SELECT vyc.object_id
, vyc.rowkey
, el.instrument
, i.ccy
, vyc.timezone
, vyc.asof
, vyc.snaptime
, vp.rate AS Mid
, vp.bid
, vp.ask
, vp.updatetime
FROM val_yield_curves vyc
JOIN val_yc_def_elements el
ON el.pkey = valuations_yieldcurves.getCurveDefinitionKey(vyc.asof, vyc.object_id)
JOIN
(SELECT asof, curve, instrument, rate, quality, source, updatetime, bid, ask
FROM val_prices_interestrates
UNION
SELECT asof, curve, instrument, rate, quality, source, updatetime, bid, ask
FROM val_prices_basisswaps
UNION
SELECT asof, curve, instrument, rate, quality, source, updatetime, bid, ask
FROM val_prices_oisrates
UNION
SELECT asof, curve, instrument, rate, quality, source, updatetime, bid, ask
FROM val_prices_fx) vp
ON el.instrument = vp.instrument
AND vp.asof = vyc.asof
AND vp.curve = vyc.rowkey
JOIN
(SELECT pkey, symbol FROM val_mds_sources) vms
ON vms.pkey = vp.source
JOIN instruments i
ON i.pkey = el.instrument
WHERE vyc.asof IN ('12Oct2020') -- FIXED
AND vyc.timezone IN ('L1200') -- FIXED
AND vyc.object_id LIKE '%FXSpot%'
ORDER BY vp.updatetime
VBA
...
' READ SQL QUERY FROM FILE INTO STRING
With CreateObject("Scripting.FileSystemObject")
sqlquery = .OpenTextFile("C:\path\to\my\SQL\Query.sql", 1).readall
End With
DBresults.Open sqlquery, DBConn, adOpenDynamic
我有一个带有8个JCombobox和文本字段的Jframe...当我按下提交按钮时得到了数据类型不匹配错误 如何解决这个错误?
我试图使用Bean shell断言从我的JBDC请求采样器中提取结果 我在我的采样器中添加了一个beanshell断言来提取结果,但运行时出现了一个错误。有关守则是: 其中dataFromDB是我的JBDC请求采样器的结果变量名 错误是:断言失败消息:org。阿帕奇。乔芬。util。JMeterException:调用bsh方法时出错:eval
所以我从文件中读取信息,得到一个类型不匹配错误。我通过调试器运行了它,但我不确定是什么导致了它——因为它正在读取正确的数字(在本例中为2000),但它似乎不认为它是整数? 我的代码如下: 从这些信息中可以看出: 2014年雇员史密斯,约翰2000 2015推销员琼斯,比尔3000 100000 2014执行布什,乔治5000 55 2014年员工曼,莎拉4000 2015年销售员Marco,约旦5
我目前正在制作一个WordPress插件,并试图从WooCommerce数据库中选择几个值,我一直得到的是同一个错误。什么可能是错的? 我的代码: 错误: 致命错误:未捕获错误:调用C:\xampp\htdocs\ExamenProject\wp content\plugins\drukkebaasjes sizedata\drukkebaasjes sizedata.php中未定义的方法mysq
我试图解析JSON数据,为此我编写了自定义模式。通过添加模式或不添加模式来解析数据时,我得到以下错误: 这是我的示例数据: 这是我的模式: 以下是我尝试获取数据的方式: 提前致谢。
我正在进行rest调用并以这种格式获取数据 然后,我尝试使用此函数将此数据映射到JSON对象 但是得到一个错误: 类型“String”不是类型“FutureOr”的子类型 有人能在这个问题上帮我吗?