gpt4 book ai didi

python - MySQL 中出现错误 1146 的问题

转载 作者:行者123 更新时间:2023-11-29 13:50:11 25 4
gpt4 key购买 nike

所以我正在使用 Python 做一个基本的 MySQL 教程,我首先使用以下代码创建一个简单的数据库。

import MySQLdb as mdb

con = mdb.connect('localhost', 'testuser', 'test623', 'testdb')

with con:
cur = con.cursor()
cur.execute("DROP TABLE IF EXISTS Writers")
cur.execute("CREATE TABLE Writers (Id INT PRIMARY KEY AUTO_INCREMENT, Name VARCHAR(25))")
cur.execute("INSERT INTO Writers(Name) VALUES ('Jack London')")
cur.execute("INSERT INTO Writers(Name) VALUES ('Honore de Balzac')")
cur.execute("INSERT INTO Writers(Name) VALUES ('Lion Feuchtwanger')")
cur.execute("INSERT INTO Writers(Name) VALUES ('Emile Zola')")
cur.execute("INSERT INTO Writers(Name) VALUES ('Truman Capote')")

执行得很好。然后我运行以下 MySQL 命令。

USE Writers;
SELECT * FROM Writers;

最后一行抛出错误

ERROR 1146 (42S02): Table 'Writers.Writers' doesn't exist

有人知道是什么原因导致这个问题或者为什么它首先尝试访问名为 Writers.Writers 的东西吗?

最佳答案

您连接到 MySQL 并将默认数据库设置为 testdb。这就是创建 Writers 表的地方。然后,您切换到 Writers,那里没有这样的表。例如

con = mdb.connect('localhost', 'testuser', 'test623', 'testdb')
^^^^^^^--- default DB

正在做

SELECT * FROM testdb.Writers

会起作用,就像那样

use testdb;
SELECT * FROM Writers

关于python - MySQL 中出现错误 1146 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16801727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com