MySQL:表不存在导致的错误处理
在MySQL中,如果尝试访问一个不存在的表,会抛出TableDoesNotExistsException
或.NoSuchTableException
。
以下是一个简单的错误处理示例:
import mysql.connector
try:
# 创建数据库连接
db_conn = mysql.connector.connect(
host="your_host",
user="your_user",
password="your_password",
database="your_database" # 如果不存在,会抛出异常
)
# 操作表(如果不存在,会抛出异常)
cursor = db_conn.cursor()
cursor.execute("SELECT * FROM your_table" if "your_table" not in db_conn.database else "") # 如果表不存在,不会执行这个语句
except mysql.connector.Error as err:
print(f"Error: {err}")
if err.code == 1054: # 表不存在的错误代码
print("Table does not exist.")
这段代码会尝试连接到数据库并访问一个名为your_table
的表。如果表不存在,它会捕获异常并打印出相应的错误信息。
还没有评论,来说两句吧...