我需要在python中调用存储过程。包装函数接受n个参数。 根据参数列表,我需要引用或取消引用参数。我也需要发送一个空参数。迭代函数参数并保留python中的排序顺序
如何迭代函数参数并构建SQL字符串?
例如。在存储过程调用看起来是这样的 - SP_TEST(“CHRA”,INTB,CHRC)
def execSp(a,b,c,d):
<iterate through params and build param list>
#If the parameter c is null the SQL should be built as below
SQL="exec SP_TEST('a',b,Null)";
我试着用当地人(),但是它返回一个无序列表
是新来的蟒蛇,因此任何线索将是很有帮助。
它通常是一个好主意,让“功能的脸” - 也就是说,接口程序的其他部分,如“友好“尽可能。你为什么需要引用一些参数,而其他的不是?似乎让生活变得更加困难......该功能可以不处理这个问题吗? – Floris
感谢您的回复。我们可以编写它,以便函数处理它。但是,这是重写现有的应用程序。试图尽量减少现有应用程序中的代码更改次数。当前的UI层使用一定数量的参数进行调用,我们现在需要一个python包装来调用底层存储过程。引号是处理字符串而不是整数。作为存储过程调用的一部分,能够传递NULL是额外的复杂性。 – Ansirk
我现在明白了。我已经发布了一个答案,我相信你所要求的一切 - 如果没有,你应该能够很容易地找出需要的改变。 – Floris