我确实有问题.我试图通过OUTPUT参数从存储过程返回.
alter procedure dbo.UDP_GET_OUT
@P_PARAM XML OUTPUT
WITH EXECUTE AS CALLER
as
BEGIN
SET @P_PARAM =
(
select
name,system_type_id
from sys.types
FOR XML PATH('Type'),ROOT('ROOT'),ELEMENTS
)
/*SELECT @P_PARAM*/
END
Run Code Online (Sandbox Code Playgroud)
然后我调用该过程并分配输出参数.
declare @xml XML
exec dbo.UDP_GET_OUT @xml
select @xml
Run Code Online (Sandbox Code Playgroud)
现在是棘手的部分 - 结果始终为NULL.有人能指出我做错了什么吗?谢谢
我们一直在研究一些遗留代码,并找到了检查日期(VARCHAR2)是否以正确格式'YYYY-MM-DD HH24:MI:SS'传递的函数.它使用简单的构造
function IS_CORRECT_TIMESTAMP(P_EVENT_TIMESTAMP varchar2)
return number is
V_TIMESTAMP timestamp;
begin
select TO_TIMESTAMP(NVL(P_EVENT_TIMESTAMP, '1'),
'YYYY-MM-DD HH24:MI:SS')
into V_TIMESTAMP
from DUAL;
return 1;
exception
when others then
return - 1;
end;
Run Code Online (Sandbox Code Playgroud)
问题是,当我传递值例如'22 -AUG-13'时,它不会抛出任何异常.这可能是什么原因?
谢谢你的想法.