我在页面中有经典报告,它有以下SQL查询:
AC.FILE_DATA
我想要FILE_DATA
的下载链接,即BLOB。因此,在属性Type: Download BLOB
Table Name: AC
BLOB Column: FILE_DATA
Primary Key Column 1: ID
列中,我设置了以下内容:
AC.FILE_DATA
然后该页面在经典报告区域的位置生成错误:
错误:ORA-06502:PL / SQL:数字或值错误:字符到数字 转换错误
查看调试日志会显示更多内容:
" AC区域中的异常":Sqlerrm:ORA-06502:PL / SQL:数值或值 错误:字符到数字转换错误Backtrace:ORA-06512:at " APEX_050100.WWV_RENDER_REPORT3",第7965行
在左连接中没有Public Function MyCode(ByVal txt As String) As String
Dim maxi As Double, db As Double
maxi = -9999
arr = Split(Replace(txt, "=", ","), ",")
For Each a In arr
If IsNumeric(a) Then
db = CDbl(a)
If db > maxi Then maxi = db
End If
Next a
MyCode = CStr(maxi)
End Function
,没有例外。那么在报表查询中使用连接时,我真的可以使用blob下载列吗?
答案 0 :(得分:1)
据我所知,它与(左)加入无关,而是与您创建下载链接的方式无关。 NOT 应该是BLOB列名,但是:
dbms_lob.getlength(ac.file_data) download
或者,应用于您的查询,
SELECT CELLS.ID,
CELLS.NAME,
CELLS.NUM,
CELLS.AC_ID,
AC.SERIAL,
AC.FILE_NAME,
--
dbms_lob.getlength(AC.FILE_DATA) download --> this
FROM CELLS
LEFT JOIN AC
ON CELLS.AC_ID = AC.ID
WHERE CELLS.AC_ID IS NOT NULL
ORDER BY CELLS.NUM
“下载”列设置:
保存,运行 - 应该没问题。