keyshen 2020-10-26 10:39 采纳率: 80%
浏览 94
已采纳

关于python使用postgreSQL问题

1.本人新手,今日练习python连接postgre数据库中,发现以下问题

# coding = utf-8
import psycopg2

conn = psycopg2.connect(database="School", user="postgres", password="aaaaaa", host="127.0.0.1", port="5432",
                        )

print("Opened database successfully")

cur = conn.cursor()
cur.execute("SELECT 课程号, 课程名称, 教师号  from Course")
rows = cur.fetchall()
for row in rows:
    print("课程号 = ", row[0])
    print("课程名称 = ", row[1])
    print("教师号 = ", row[2])

print("Operation done successfully")
conn.close()

之后出现错误

Traceback (most recent call last):
  File "C:/Users/Administrator.DESKTOP-02S6LKD/PycharmProjects/pythonProject/HelloWorld.py", line 10, in <module>
    cur.execute("SELECT 课程号, 课程名称, 教师号  from Course")
psycopg2.errors.UndefinedTable: relation "course" does not exist
LINE 1: SELECT 课程号, 课程名称, 教师号  from Course
                                              ^

数据库如下:
图片说明

这个很头痛,后来新建一个库,设置列表名全是英文又可以读取,是不是不能识别中文?

  • 写回答

1条回答 默认 最新

  • 禾乃儿_xiuer 2020-10-26 18:01
    关注

    首先不建议使用中文命名表字段,或者表名称。其次postgres是严格区分大小写和中文的,sql语句中记得为大写英文及文字字段带入双引,如
    INSERT INTO "public"."name_age"("姓名", "id", "年龄") VALUES ('张三', 1, '13');

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

    报告相同问题?

    悬赏问题

    • ¥100 webapi的部署(标签-服务器)
    • ¥20 怎么加快手机软件内部计时的时间(关键词-日期时间)
    • ¥15 C语言除0问题的检测方法
    • ¥15 为什么四分管的内径有的是16mm有的15mm,四分不应该是12.7mm吗
    • ¥15 macos13下 ios交叉编译的问题
    • ¥15 bgz压缩文件怎么打开
    • ¥15 封装dll(引入了pcl的点云设计库)
    • ¥30 关于#开发语言#的问题:我需要在抄板的基础上再抄板抄程序,根据RDA8851CM基础上开发
    • ¥15 oracle 多个括号,怎么删除指定的括号及里面的内容?
    • ¥15 小新14API2019想用bios调风扇