如果我在.txt文件中有一个电子邮件帐户列表,有没有办法可以针对包含电子邮件帐户的行的每个实例执行mysql delete语句?
我们有一个时事通讯邮件列表,目前大约有600封电子邮件无效,除了手动逐一进行操作外,我们还想要一种更简单的方法来摆脱它们。
答案 0 :(得分:5)
使用excel将数据集转换为逗号分隔的字符串,然后简单地:
DELETE FROM YOUR_TABLE
WHERE email IN ('example@aol.com', 'example2@aol.com')
请注意,您还需要在excel中的每个电子邮件地址之前和之后手动添加单引号。
答案 1 :(得分:3)
假设您要使用文本文件的内容作为要从数据库中删除的地址来源:
$addreses = file('emails.txt');
foreach($addresses as $address) {
$safe_address = mysql_real_escape_string($address);
$sql = "DELETE FROM yourtable WHERE (email = '$safe_address');";
$result = mysql_query($sql) or die(mysql_error());
}
是最简单的形式。您可以执行一些操作来优化流程,例如以引号/逗号分隔的形式创建电子邮件列表,然后使用WHERE IN (...)
来减少生成/执行的查询数量。
请注意,我使用PHP作为伪代码占位符,但几乎所有语言的基本原理都是相同的。
答案 2 :(得分:0)
如何为delete statement
创建single email
,然后使用Microsoft excel
完成其余的电子邮件?通过使用连接函数并与所选电子邮件列表匹配