use*_*123 5 python sql postgresql psycopg2
我无法删除PostgreSQL数据库中的特定表。该表称为“用户”。当我尝试运行以下代码段时,
import psycopg2
conn = psycopg2.connect("dbname='mydatabase' user='postgres' host='localhost' password='mypassword'")
cur = conn.cursor()
cur.execute("DROP TABLE user;")
conn.commit()
conn.close()
Run Code Online (Sandbox Code Playgroud)
它吐出以下错误
Traceback (most recent call last):
File "dev_psycog.py", line 20, in <module>
cur.execute("DROP TABLE user;")
psycopg2.ProgrammingError: syntax error at or near "user"
LINE 1: DROP TABLE user;
Run Code Online (Sandbox Code Playgroud)
我可以删除数据库中的任何其他表,但是我似乎无法删除名为“ user”的表。是否因为“用户”是保留关键字?
引用“用户”如下
import psycopg2
conn = psycopg2.connect("dbname='mydatabase' user='postgres' host='localhost' password='mypassword'")
cur = conn.cursor()
cur.execute('DROP TABLE "user";')
conn.commit()
conn.close()
Run Code Online (Sandbox Code Playgroud)
看这里。
还有第二种标识符:定界标识符或带引号的标识符。它是通过将任意字符序列括在双引号(“)中形成的。
归档时间: |
|
查看次数: |
4002 次 |
最近记录: |