我创建了一个函数,它使用 Python 中的 cursor.rowcount
函数计算表格中的行数。现在我想将它应用到我通过 %s 选择的表。问题是我不知道如何应用它。这是我正在使用的示例。
def data_input (table):
cursor.execute ("USE database")
cursor.execute ("TRUNCATE TABLE table1")
cursor.execute ("TRUNCATE TABLE table2")
cursor.execute ("LOAD DATA LOCAL INFILE 'table1data' INTO TABLE table1 FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n' (field1, field2, field3, field4, field5)")
cursor.execute ("LOAD DATA LOCAL INFILE 'table2data' INTO TABLE table2 FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n' (field1, field2, field3)")
cursor.execute ("SELECT * FROM %s", table)
print cursor.rowcount
data_input ("table1")
基本上它已经做的是将所有数据从一个文本文件输入到 MySQL 中的表中,现在我希望该函数还可以打印特定表的行数。它收到一条错误消息,指出错误的 MySQL 语法,因此此代码的行计数部分是错误的。
最佳答案
query = "SELECT COUNT(*) from `%s`" %table
cursor.execute(query) #execute query separately
res = cursor.fetchone()
total_rows = res[0] #total rows
关于Python/MySQL-如何正确使用 %s 来计算行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12790876/