如何访问受以下因素影响的行数:
cursor.execute("SELECT COUNT(*) from result where server_state='2' AND name LIKE '"+digest+"_"+charset+"_%'")
尝试使用fetchone
:
cursor.execute("SELECT COUNT(*) from result where server_state='2' AND name LIKE '"+digest+"_"+charset+"_%'")
result=cursor.fetchone()
result
将包含一个元素为的元组COUNT(*)
。因此找到行数:
number_of_rows=result[0]
或者,如果您愿意一口气做到这一点:
cursor.execute("SELECT COUNT(*) from result where server_state='2' AND name LIKE '"+digest+"_"+charset+"_%'")
(number_of_rows,)=cursor.fetchone()
PS。最好在可能的情况下使用参数化的参数,因为它可以在需要时自动为您引用参数,并防止sql注入。
参数化参数的正确语法取决于您的python /数据库适配器(例如mysqldb,psycopg2或sqlite3)。它看起来像
cursor.execute("SELECT COUNT(*) from result where server_state= %s AND name LIKE %s",[2,digest+"_"+charset+"_%"])
(number_of_rows,)=cursor.fetchone()
问题内容: 我目前正在从事C#项目,并且正在运行一个插入查询,该查询也同时进行选择,例如: 有没有一种方法可以查看此查询期间插入了多少行? 问题答案: -返回受影响的行数。
问题内容: 这是我的代码 为假,但在数据库中插入该行以及我指定的所有信息 我手动重建查询以查看问题是否来自查询。参数,它再次无错误地插入数据库,但insertOk仍然为false!我什至还添加了另外两个不应该为空的字段,但是两种情况下的活动都是相同的 有任何想法吗? 问题答案: 对于UPDATE,INSERT和DELETE语句,返回值是受命令影响的行数。 当要插入或更新的表上存在触发器时,返回值包
问题内容: 使用php / mysql如何获取查询影响的行数? 到目前为止我尝试过的是: 但它表示警告:mysql_num_rows():提供的参数不是有效的MySQL结果资源 问题答案: 如果您使用的是PDO(我建议使用PDO),则直接查询将返回受影响的行数。对于Prepared Statements, 有一个称为的方法。 如果您使用的是mysql函数,则有。 编辑: 似乎您正在使用mysql函
问题内容: 我有一个关于Python和sqlalchemy模块的问题。sqlalchemy Python中的等效项是什么? 问题答案: 对象也具有属性。
问题内容: 我有这个查询: 我的表是,我有一列名为。我要更新的是名为“ yes” 的列。 知道我在做什么错吗?当我返回查询时,它说受影响的0行。 问题答案: 如苯丙胺和Yada所建议,如果您的电话号码在表中,请使用进行检查。 但是请记住:如果所讨论的行的值已经是“是”,则mysql不会更改该值,因此将返回“受影响的0行”。因此,请务必同时检查
问题内容: 我发现有很多方法可以将exec语句用于PDO,但是我不确定它是否对我有帮助。我的理解是我必须对准备好的语句使用execute()函数。我正在使用来自用户输入的数据更新一行,因此我想使用一个准备好的语句而不是query()调用。 我的代码如下: 问题是查询本身没有错误并且可以正常执行,因此在$ f中存储没有错误。但是,我需要知道它是否确实找到要更新的行,然后成功更新了它。换句话说,我需要