Redshift查询不使用psycopg2

问题描述 投票:0回答:1

我正在创建一个Python脚本来与Redshift上的架构权限(和相关表)进行交互。正如其他一些StackOverflow帖子中所建议的那样,我正在使用psycopg2库。

当我尝试执行一些简单的SELECT FROM查询时,我没有遇到任何问题:我可以执行并查看没有问题的结果。

例如,当我尝试创建新架构或授予​​/撤消权限时出现问题。这种查询看起来不会产生任何影响。

这里我展示了一个非常简单的例子,我尝试创建一个新的模式:

conn_string = "dbname='{}' port='{}' host='{}' user='{}' password='{}'".format(DB_NAME, DB_PORT, DB_HOST, DB_USER, DB_PWD)
con = psycopg2.connect(conn_string)


sql = "CREATE SCHEMA new_schema"
cur = con.cursor()
cur.execute(sql)

但是当我查看Redshift DB时,我没有看到任何名为new_schema的新架构。当我尝试运行某些权限grant / revoke查询时,会发生相同的行为。

谁知道发生了什么事?

python amazon-redshift psycopg2
1个回答
1
投票

您必须提交交易。

con = psycopg2.connect(conn_string)

sql = "CREATE SCHEMA new_schema"
cur = con.cursor()
cur.execute(sql)
con.commit()
© www.soinside.com 2019 - 2024. All rights reserved.