Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.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 在execute psycopg2方法中调用SQL文件?_Python_Psycopg2 - Fatal编程技术网

Python 在execute psycopg2方法中调用SQL文件?

Python 在execute psycopg2方法中调用SQL文件?,python,psycopg2,Python,Psycopg2,我想知道是否有可能在一个数据库中通过一个大查询调用sql文件 conn = psycopg2.connect('database') cursor = conn.cursor() cursor.execute( <bigQuery.sql> ) conn=psycopg2.connect('database')) 游标=连接游标() cursor.execute() 注:如果我把查询放在.py文件中,并设置一个常量,它就会工作。但那不是我想做的。我想调用execute方法中指向的

我想知道是否有可能在一个数据库中通过一个大查询调用
sql
文件

conn = psycopg2.connect('database')
cursor = conn.cursor()
cursor.execute( <bigQuery.sql> )
conn=psycopg2.connect('database'))
游标=连接游标()
cursor.execute()

注:如果我把查询放在
.py
文件中,并设置一个常量,它就会工作。但那不是我想做的。我想调用
execute
方法中指向的
.sql
文件

您是否尝试过类似的方法:

conn = psycopg2.connect('database')
cursor = conn.cursor()
sql_file = open('/path/to/sql_statement.sql', 'r')
cursor.execute(sql_file.read())

警告:此代码可能不是内存/文件安全的,因为它不使用上下文管理器或指定关闭。在处理文件流时,您总是希望在
with
子句中打开它们。见: