SqlServer通过Openquery调用Oracle中的存储过程得到一个select结果集

需要从Oracle数据库取数,通过存储过程的方式
Oracle 中存储代码

CREATE OR REPLACE PACKAGE T_TEST IS
TYPE C_CURSOR IS REF CURSOR;
PROCEDURE P_TEST(DT in date,V_RESULT OUT C_CURSOR);
END T_TEST;

CREATE OR REPLACE PACKAGE BODY T_TEST IS

PROCEDURE P_TEST(V_RESULT OUT C_CURSOR) IS
BEGIN
OPEN V_RESULT FOR
SELECT T_CODE,T_NAME FROM T_TEST WHERE T_DATE =DT;
END P_TEST;
END T_TEST;

我想要达到的结果,SQLSERVER中调用:SELECT * FROM OPENQUERY (TEST,' '),空白这一块的代码要如何去实现呢?

如果你把它改造成一个函数,return这个V_RESULT 是不是就能用select解决了?
另外,sqlserver的openquery调用存储过程用call命令,可以参考一下这篇文章

但是,你这么做应该达不到想要的目的,因为"REF CURSOR"这种类型并不是实实在在的数据,这种类型本身其实只相当于一个对象id,其数据还是在原数据库里,只能被原数据库使用。如果你想要得到数据,可以尝试使用表函数返回一个table类型,这样就能当成普通的select语句使用了,直接查询出来也是一个表格