我编写了一个函数 StoogeFunk ,它使用FOREACH来对抗 systables 和 syscolumns ,在字符串中连接一个字段列表。 table(其名称作为函数参数传递)。我用CAST / VARCHAR(30)包围日期字段,原因我不敢解释。所以,我来到了一个字符串, SelectString ,相当于:
SELECT Name, CAST(DOB AS VARCHAR(30)) AS DOB, ShoeSize FROM Stooges
我的函数只返回LVARCHAR字符串(由于字段很多,它是一个很长的字符串)。结果文本SELECT在查询窗口中工作正常。
1。)现在,我没有返回那个字符串(一个简单的“RETURN SelectString;”行在“END FUNCTION;”之前),而是想要执行该字符串,从函数返回一个很好的,大的,多汁的记录。我想象一下EVAL:
RETURN EVAL(SelectString);
我怎么能达到那个梦想?
2。)如果上述情况不可能,我可以在外部调用 SelectString -result函数吗?
EXECUTE EVAL(StoogeFunk("StoogeTable"))
这怎么可行?