在使用python和mysqldb时,如何在不使用字段名的情况下删除mysql行?
使用上面的代码,我想用正则表达式搜索表行,并搜索关键字“hello” 如果匹配,我想删除获取所有的行中for循环的行 当正则表达式找到行时,如何编写delete语句在使用python和mysqldb时,如何在不使用字段名的情况下删除mysql行?,python,mysql-python,Python,Mysql Python,使用上面的代码,我想用正则表达式搜索表行,并搜索关键字“hello” 如果匹配,我想删除获取所有的行中for循环的行 当正则表达式找到行时,如何编写delete语句 非常感谢 如果我怀疑您想要删除符合某些条件的行,那么您根本不需要选择。 从tableName中删除columnName[=,!=,LIKE]columnValue 如果需要正则表达式匹配,请阅读以下内容:您可以在SQL中使用LIKE: # -*- coding: utf-8 -*- import re import sys imp
非常感谢 如果我怀疑您想要删除符合某些条件的行,那么您根本不需要选择。
从tableName中删除columnName[=,!=,LIKE]columnValue
如果需要正则表达式匹配,请阅读以下内容:您可以在SQL中使用LIKE:
# -*- coding: utf-8 -*-
import re
import sys
import MySQLdb
from getpass import getpass
reload(sys)
sys.setdefaultencoding('utf-8')
conn = MySQLdb.connect(host, user, passwd, db, charset = 'utf-8')
cur = conn.cursor()
cur.execute("show tables")
tablenames = [i[0] for i in cur.fetchall()]
cur.execute("SELECT * FROM %s" % tablenames)
rows = cur.fetchall()
for row in rows:
x = re.compile(r"\bhello\b")
p = x.search(str(row))
if p:
cur.execute("DELETE FROM %s WHERE " % t) # how to delete this row
conn.close()
在执行sql之后,最重要的是提交:
DELETE FROM `table` WHERE `content` LIKE "%value%"
这不是一行,这是一个表名(由变量名指示),您想删除表名还是从表中的所有行中删除,或者其他什么?在“where”行中,我还没有完成,我想删除一个符合搜索条件的行,删除一个我正在检查的行。
a = cur.execute(sql)
con.commit()