使用python连接mysql,并且通过用户输入表名来进行查询、添加、删除等操作
时间: 2024-01-27 07:06:15 浏览: 29
可以使用Python中的mysql-connector库来连接MySQL数据库,并通过用户输入表名来进行查询、添加、删除等操作。以下是一个示例代码。
```python
import mysql.connector
# 构建连接参数
config = {
"user": "username",
"password": "password",
"host": "localhost",
"database": "dbname"
}
# 连接MySQL数据库
cnx = mysql.connector.connect(**config)
# 获取用户输入的表名
table_name = input("请输入表名:")
# 创建游标对象
cursor = cnx.cursor()
# 查询数据
query = f"SELECT * FROM {table_name}"
cursor.execute(query)
rows = cursor.fetchall()
for row in rows:
print(row)
# 添加数据
insert_query = f"INSERT INTO {table_name} (column1, column2) VALUES (%s, %s)"
values = ("value1", "value2")
cursor.execute(insert_query, values)
cnx.commit()
# 修改数据
update_query = f"UPDATE {table_name} SET column1=%s WHERE id=%s"
values = ("new_value", 1)
cursor.execute(update_query, values)
cnx.commit()
# 删除数据
delete_query = f"DELETE FROM {table_name} WHERE id=%s"
values = (1,)
cursor.execute(delete_query, values)
cnx.commit()
# 关闭游标和连接
cursor.close()
cnx.close()
```
在上述代码中,我们获取用户输入的表名,并使用`f-string`将表名动态插入SQL语句中。然后,使用游标对象执行SQL查询和修改操作。对于添加、修改、删除操作,需要使用`cnx.commit()`来提交更改并使其生效。最后,需要关闭游标和连接以释放资源。
需要将`username`、`password`、`localhost`和`dbname`替换为实际的数据库用户名、密码、主机名和数据库名。同时,需要将`column1`、`column2`和`id`替换为实际的列名。