webForumDet fria alternativet

Ta bort email adresser i MySQL

8 svar · 285 visningar · startad av Matsakii

MatsakiiMedlem sedan mars 2005265 inlägg
#1

Jag har en sajt som har en MySQL databas med över 20.000 emailadresser. Nu har jag kollat igenom vilka som fungerar och har en lista på nästan 4.000 adresser som inte fungerar (fejk adresser)

Nu skulle jag vilja använda min lista med fejk adresser och ta bort dom ur databasen, men hittar inget syntax för det :(

Det börjar:

SELECT strEmail FROM tblMembers

och sen vill jag som sagt lägga till syntax med listan över dom nästan 4.000 adresserna som ska bort ur "strEmail"

Peter SMedlem sedan dec. 20025 483 inlägg
#2

Syntaxen för att ta bort poster från en tabell är:

delete
   from tblMembers
  where strEmail = 'foo@bar.com'

Har du annan information i samma tabell som du vill behålla, kan du uppdatera posterna och sätta e-postfältet till en tom sträng:

update tblMembers
   set strEmail = ''
 where strEmail = 'foo@bar.com'

För att ta bort/uppdatera flera poster i samma fråga:

delete
   from tblMembers
  where strEmail
     in ('e-post1','e-post2','e-post3')

...

update tblMembers
   set strEmail = ''
 where strEmail
    in ('e-post1','e-post2','e-post3')
MatsakiiMedlem sedan mars 2005265 inlägg
#3

Tackar och "buggar" som min grekiska vän säger :)

MatsakiiMedlem sedan mars 2005265 inlägg
#4

Eller, nått vatt fel :(

Nehejdå, det var det inte alls det. Eller jo i mitt huvud denna gång :birp

glömde ta bort sista kommat hotmail',)

Peter SMedlem sedan dec. 20025 483 inlägg
#5

Glöm inte att använda funktionen acceptera som slutgiltigt svar :bire

MatsakiiMedlem sedan mars 2005265 inlägg
#6

Acceptera?

Jag körde

delete
from tblMembers
where strEmail
in ('e-post1','e-post2','e-post3')

i går, och det funkade som sagt. Men det tog bort HELA profilen och inte bara mailadressen :( Som tur va så har jag en backup och lägger tillbaka alla dom 3.800 raderade.

Email fältet får inte vara tomt, så jag tänkte lägga in typ" bademail@bademail.ii" i alla dom fälten. Hur göra?

GunnarDMedlem sedan juni 20014 290 inlägg
#7

Matsakii skrev:

Acceptera?

Jag körde

i går, och det funkade som sagt. Men det tog bort HELA profilen och inte bara mailadressen :( Som tur va så har jag en backup och lägger tillbaka alla dom 3.800 raderade.

Email fältet får inte vara tomt, så jag tänkte lägga in typ" bademail@bademail.ii" i alla dom fälten. Hur göra?

Använd "Peter S" sista exempel, det som börjar med UPDATE.

Peter SMedlem sedan dec. 20025 483 inlägg
#8

Matsakii skrev:

Acceptera?

Se Hur markerar jag vilket svar som löste mitt problem?.

Matsakii skrev:

Email fältet får inte vara tomt, så jag tänkte lägga in typ" bademail@bademail.ii" i alla dom fälten. Hur göra?

update tblMembers
   set strEmail = 'bademail@bademail.ii'
 where strEmail
    in ('e-post1','e-post2','e-post3')
MatsakiiMedlem sedan mars 2005265 inlägg
#9

Tack Peter,
Nu funkade det som jag ville :)

126 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)