搜索

首页  >  问答  >  正文

使用 python 在字符串内使用变量进行 SQL 查询

我想查看用户输入的sql数据库world的特定表的所有数据,下面的代码将为我提供city表所需的输出,但我希望表名由用户输入并希望制作我的代码适用于所有情况。

from sqlite3 import connect
import mysql.connector 
mydb=mysql.connector.connect(host="localhost",user="root",password="",database='world')
mycursor=mydb.cursor()
mycursor.execute("select * from city")
for i in mycursor:
    print(i)

我想将 city 声明为字符串变量

table_name=str(input("enter table name:"))
mycursor=mydb.cursor()
mycursor.execute("select * from table_name")
for i in mycursor:
    print(i)

但我收到错误 world.table_name 不存在,我明白。有什么办法可以解决我的情况吗?寻求善意的帮助,非常感谢。

P粉195402292P粉195402292280 天前673

全部回复(1)我来回复

  • P粉495955986

    P粉4959559862024-03-23 10:48:00

    使用串联

    table_name=str(input("enter table name:"))
    query = "SELECT * FROM " + table_name
    mycursor.execute(query)

    回复
    0
  • 取消回复