将PostgreSQL数据点保存为Python变量
我正在使用PostgreSQL和Python一起工作,想知道如何把选定的PostgreSQL数据点(在这个例子中是一个网址)保存为Python中的一个变量。
import psycopg2
import sys
def insertRowInPostgreSQL():
con = psycopg2.connect("dbname='mydb' user='bond'")
cur = con.cursor()
cur.execute("SELECT url FROM urls LIMIT 1;")
con.commit()
我试过类似这样的代码:myVariable = cur.execute("SELECT url FROM urls LIMIT 1;")
,但这并没有成功。
我还在跟着一个教程,这个教程帮我创建了以下查询,但我不明白在PostgreSQL中生成的内容是如何保存为Python数组的:SELECT array_to_string(ARRAY(SELECT url FROM urls LIMIT 1), ', ');
1 个回答
0
哦,你使用了 cur.fetchone()
(查看文档):
def insertRowInPostgreSQL():
con = psycopg2.connect("dbname='myDb' user='bond'")
cur = con.cursor()
cur.execute("SELECT array_to_string(ARRAY(SELECT url FROM urls),',') AS required_urls;")
allEmailUrls = cur.fetchone()
allEmailUrls = allEmailUrls[0]
allEmailUrls = [url.strip() for url in allEmailUrls.split(',')]
for individualUrl in allEmailUrls:
print individualUrl
con.commit()
insertRowInPostgreSQL()