在我需要移植到C#的一些遗留Delphi代码中,我发现在我看来是一个非常奇怪的[e,o]" SQL语句。"
有问题的TQuery组件的SQL属性为:
Begin
MAILUTIL.SEND_MAILTXT@LEOPARD('rr@crk.com', :SUB , :TEXT, 'rr@crk.com');
MAILUTIL.SEND_MAILTXT@LEOPARD('ba@rdlands.gov', :SUB , :TEXT, 'ba@rdlands.gov');
End;
通常,SQL属性是这样的字符串:
Select * from Bakery where Item = 'Pie'
..所以这引起了我众所周知的循环。这是" Oracle的事情"或者什么?
答案 0 :(得分:4)
这是一个PL / SQL块(Oracle对SQL的过程扩展)。我的猜测是远程数据库MAILUTIL
中定义了一个包LEOPARD
,该包在包中定义了SEND_MAILTXT
过程。 MAILUTIL
也可以是架构名称,而SEND_MAILTXT
也是一个独立的程序,但似乎不太可能。
答案 1 :(得分:-1)
原因:如果邮件进程因任何原因失败,它可能会回滚整个事务,还有其他缺点。