首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL中错误1146的故障

MySQL中错误1146的故障
EN

Stack Overflow用户
提问于 2013-05-28 21:23:12
回答 1查看 2.5K关注 0票数 0

因此,我正在使用MySQL编写一个基本的教程,我首先使用下面的代码创建一个简单的数据库。

代码语言:javascript
复制
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命令。

代码语言:javascript
复制
USE Writers;
SELECT * FROM Writers;

最后一行抛出错误

错误1146 (42S02):表'Writers.Writers‘不存在

有人知道是什么原因造成的,或者为什么它一开始就试图访问一个叫做Writers.Writers的东西?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-28 21:26:09

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

代码语言:javascript
复制
con = mdb.connect('localhost', 'testuser', 'test623', 'testdb')
                                                       ^^^^^^^--- default DB

正在做什么

代码语言:javascript
复制
SELECT * FROM testdb.Writers

会起作用的

代码语言:javascript
复制
use testdb;
SELECT * FROM Writers
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16801727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档