Django Oracle游标调用外部数据库视图
Django Oracle cursor call external database view
我建立了从我的 Django 项目到外部 Oracle 数据库的连接,连接已成功完成,我可以像这样正确调用存储过程或函数:
days = cursor.callfunc('VAC_DICT', cx_Oracle.NUMBER, (identification,))
result = cursor.callproc('PINS_VAC', [data.get('identification'),'true'])
问题是,我需要在那里调用名为 'VAC_HIST' 的数据库视图,但是当我这样尝试时:
periods = cursor.execute('VAC_HIST')
我明白了 "django.db.utils.DatabaseError: ORA-00900: invalid SQL statement",明白了,我没有使用正确的语法,但我搜索了很多却找不到如何使用光标。调用视图的东西,例如 "cursor.callview" 或其他....
知道我错过了什么吗?提前致谢。
您需要在您的案例中使用 SQL 语句,如下所示
可以参考link
periods = cursor.execute('SELECT periods FROM VAC_HIST WHERE
cond=%s',string1);
我建立了从我的 Django 项目到外部 Oracle 数据库的连接,连接已成功完成,我可以像这样正确调用存储过程或函数:
days = cursor.callfunc('VAC_DICT', cx_Oracle.NUMBER, (identification,))
result = cursor.callproc('PINS_VAC', [data.get('identification'),'true'])
问题是,我需要在那里调用名为 'VAC_HIST' 的数据库视图,但是当我这样尝试时:
periods = cursor.execute('VAC_HIST')
我明白了 "django.db.utils.DatabaseError: ORA-00900: invalid SQL statement",明白了,我没有使用正确的语法,但我搜索了很多却找不到如何使用光标。调用视图的东西,例如 "cursor.callview" 或其他....
知道我错过了什么吗?提前致谢。
您需要在您的案例中使用 SQL 语句,如下所示
可以参考link
periods = cursor.execute('SELECT periods FROM VAC_HIST WHERE
cond=%s',string1);