要从另一个数据库中搜索字符串并删除包含该字符串的行,你需要执行以下步骤:
以下是一个使用Python和SQLAlchemy库连接两个数据库并执行搜索和删除操作的示例:
from sqlalchemy import create_engine, text
# 连接到源数据库
source_engine = create_engine('mysql+pymysql://user:password@source_host/source_db')
source_conn = source_engine.connect()
# 连接到目标数据库
target_engine = create_engine('mysql+pymysql://user:password@target_host/target_db')
target_conn = target_engine.connect()
# 要搜索的字符串
search_string = 'example'
# 在源数据库中搜索包含字符串的行
search_query = text("SELECT id FROM table_name WHERE column_name LIKE :search_string")
result = source_conn.execute(search_query, search_string=f'%{search_string}%')
# 获取要删除的行的ID列表
rows_to_delete = [row['id'] for row in result]
# 在目标数据库中删除这些行
for row_id in rows_to_delete:
delete_query = text("DELETE FROM table_name WHERE id = :row_id")
target_conn.execute(delete_query, row_id=row_id)
# 关闭连接
source_conn.close()
target_conn.close()
通过以上步骤和注意事项,你可以安全有效地从一个数据库中搜索字符串并在另一个数据库中删除相应的行。
领取专属 10元无门槛券
手把手带您无忧上云