Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python转换格式sql字符串_Python_Oracle_Format - Fatal编程技术网

python转换格式sql字符串

python转换格式sql字符串,python,oracle,format,Python,Oracle,Format,因为要将静态sql处理为动态sql,所以需要使用python转换格式,例如 DROP TABLE TABLE_NAME PURE; CREATE TABLE TABLE_NAME NOLOGGING AS SELECT DUMMY USER_ID FROM DUAL; CREATE INDEX I_TABLE_NAME_USER_ID ON TABLE_NAME(USER_ID) NOLOGGING; 我想将格式转换为: 首先确定是否存在“drop table”,然后删除数据,并替换 V_TA

因为要将静态sql处理为动态sql,所以需要使用python转换格式,例如

DROP TABLE TABLE_NAME PURE;
CREATE TABLE TABLE_NAME NOLOGGING AS
SELECT DUMMY USER_ID FROM DUAL;
CREATE INDEX I_TABLE_NAME_USER_ID ON TABLE_NAME(USER_ID) NOLOGGING;
我想将格式转换为:

首先确定是否存在“drop table”,然后删除数据,并替换

V_TAB_NAME: = 'TABLE_NAME';
IF (F_DROP_TAB (V_TAB_NAME) = 1) THEN
V_SQL: = ' 
最终结果如下所示

V_TAB_NAME := 'TABLE_NAME ';
IF (F_DROP_TAB(V_TAB_NAME) = 1) THEN
SJ_SQL := '
CREATE TABLE TABLE_NAME NOLOGGING AS
SELECT DUMMY USER_ID FROM DUAL';
EXECUTE IMMEDIATE SJ_SQL;
COMMIT;
END IF;
SJ_SQL := '
CREATE INDEX I_TABLE_NAME_USER_ID ON TABLE_NAME (USER_ID) NOLOGGING';
EXECUTE IMMEDIATE SJ_SQL;

这可能有点难以理解,但我希望有人能给我一个小字符串,让我反复阅读并判断修改后的示例或想法。谢谢。

这里有一种将变量插入SQL语句的简单方法:

table = 'mytable'
col1 = 'name'
col2 = 'age'

statement = 'select {}, {} from {};'.format(col1, col2, table)

这就是你要找的吗?如果没有,我就不太明白这个问题。

欢迎来到这里。请在