DELETE...

Pagina: 1
Acties:
  • 78 views sinds 30-01-2008

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:33

BierPul

2 koffie graag

Topicstarter
Ik heb in me mysql dbase een table met email adressen nu wil ik alle email adressen die eindigen op .be deleten...

Hoe ga ik dat flikken ik probeerde het volgende maar dat gaf een error

DELETE from mailing2 WHERE adres LIKE "*.be";

Ja man


Verwijderd

delete from mailing where address like '%.be'

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Op woensdag 04 juli 2001 14:42 schreef LOST_GUNT het volgende:
DELETE from mailing2 WHERE adres LIKE "*.be";
In die query, mag je op die plek in principe geen "" gebruiken. In plaats daarvan zijn '' vereist.
Dat is de eerste fout.
De tweede, is dat de SQL standaard * niet als wildcard gebruikt, maar in plaats daarvan %. Mocht je ooit es op 1 karakter willen zoeken, neem dan _
En mocht je er juist niet op willen zoeken, escape ze dan, met bijvoorbeeld (mysql/postgresql) een \

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:33

BierPul

2 koffie graag

Topicstarter
vaag query wordt goedgekeurd hij delete aleen de records niet |:(

Ja man


Verwijderd

doe es

select * from mailing where address like '%.be'

geeftie dan wel wat dan?

Marc

  • CV_SmileY
  • Registratie: Februari 2001
  • Laatst online: 11-09 13:16

CV_SmileY

JackOfAllTrades MasterOfNone

offtopic:
heb je iets tegen belgen ?? :)

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:33

BierPul

2 koffie graag

Topicstarter
nope empty ik denk dat er wat mis is gegaan met me import .. maar ik zie ze via myadmin wel staan als ik kijk heel vaag

Ja man


  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:33

BierPul

2 koffie graag

Topicstarter
offtopic:
nope niks tegen belgen maar die hebben niets aan de aanbieding die ik ze ga doen :)

Ja man


  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:33

BierPul

2 koffie graag

Topicstarter
select * from mailing2 doet het wel krijg ik gewoon netjes me 1900 records terug

Ja man


  • tomato
  • Registratie: November 1999
  • Niet online
Je tabelnaam ruikt naar een fout database model (en niet alleen om die '2').

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:33

BierPul

2 koffie graag

Topicstarter
Wat is dar fout aan dan :?

Ja man


  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Wat is nu je databasenaam??

adres of address

en je tabelnaam?

mailing of mailing2 ?

Sundown Circus


  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:33

BierPul

2 koffie graag

Topicstarter
Het is gelukt het probleem kwam doordat ik ook een wildcard aan het einde moest plaatsen.. dit doordat er spaties aan het einde staan van alle mail adressen , weet iemad hoe ik die kan trimmen ?

Ja man


Verwijderd

hehe met php scriptje
PHP:
1
2
3
4
5
6
7
8
9
<?
mysql_connect("bla", "bla", "bla");
$result = mysql_db_query("mailing2", "select * from tabelnaam");
while ($row = mysql_fetch_array($result))
{
  mysql_db_query("mailing2", "update tabelnaam set adres = '" . trim($row["adres"]) . "'");
}
mysql_close();
?>

grofweg de strekking van het simpele trim scrippie ;)

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:33

BierPul

2 koffie graag

Topicstarter
dacht zelf aan iets als dit

select RTRIM('adressen ');

maar ik ga je optie ff proberen thnx

Ja man


  • tomato
  • Registratie: November 1999
  • Niet online
Op woensdag 04 juli 2001 15:10 schreef LOST_GUNT het volgende:
Wat is dar fout aan dan :?
Ten eerste is 'mailing' een Engels woord en 'adres' een Nederlands woord.

Ten tweede staat er een 2 achter de naam van je tabel, dit suggereert dat je ook bijvoorbeeld 'mailing1' en 'mailing5' hebt. Niet zo best dus.

Ten derde geeft de benaming 'mailing2' mij de indruk dat het om data voor een mailinglist gaat (en met het vorige punt in acht genomen kom ik tot de conclusie dat je meerdere mailinglists hebt). Als dit zo is vind ik het niet echt logisch dat de tabel met de naam 'mailingx' email adressen bevat (dit is waarschijnlijk nog je ernstigste denkfout mbt je database model).

[/off-topic]

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:33

BierPul

2 koffie graag

Topicstarter
Ik krijg de volgende error terug

[error]
Warning: Supplied argument is not a valid MySQL result resource in /home/softmachine/wwwadmin/mail.softmachine.nl/html/trim.php on line 4
[/error]

Dit is me aangepaste code
PHP:
1
2
3
4
5
6
7
8
9
<?
mysql_connect("localhost", "michael", "*******");
$result = mysql_db_query("mailing2", "select * from mailing2");
while ($row = mysql_fetch_array($result))
{
  mysql_db_query("mailing2", "update mailing2 set adres = '" . trim($row["adres"]) . "'");
}
mysql_close();
?>

wat gaat er mis :?

Ja man


  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:33

BierPul

2 koffie graag

Topicstarter
Kan nou echt niemand me helpen :)

Ja man


Verwijderd

Op woensdag 04 juli 2001 16:36 schreef LOST_GUNT het volgende:
Kan nou echt niemand me helpen :)
Heb je de query al getest op de sqlprompt?

Verwijderd

Ga je 1900 queries loslaten op je sql server? Ik heb echt medelijden met mysql... |:(

  • tomato
  • Registratie: November 1999
  • Niet online
Heb je wel eens gehoord van debuggen :?

echo mysql_error();
echo $query_string;
Query uitvoeren vanaf MySQL prompt.

En inderdaad een lekker gezonde manier om de spaties weg te halen |:(

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Op woensdag 04 juli 2001 16:39 schreef daniel_hoenderdos het volgende:
Ga je 1900 queries loslaten op je sql server? Ik heb echt medelijden met mysql... |:(
Wat is daar mis mee??
De servers van t.net zitten op enkele 100den queries per minuut...

Oeps, niet zo goed gekeken :)
Ik ben het met je eens ;)

Dat kan beter. trim() is vast wel als functie binnen mysql beschikbaar.

Verwijderd

Tja, ik zou het proberen efficient te houden, dus te zoeken naar wat minder queries.

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Op woensdag 04 juli 2001 16:16 schreef LOST_GUNT het volgende:
Ik krijg de volgende error terug

[error]
Warning: Supplied argument is not a valid MySQL result resource in /home/softmachine/wwwadmin/mail.softmachine.nl/html/trim.php on line 4
[/error]

Dit is me aangepaste code
PHP:
1
2
3
4
5
6
7
8
9
<?
mysql_connect("localhost", "michael", "*******");
$result = mysql_db_query("mailing2", "select * from mailing2");
while ($row = mysql_fetch_array($result))
{
  mysql_db_query("mailing2", "update mailing2 set adres = '" . trim($row["adres"]) . "'");
}
mysql_close();
?>

wat gaat er mis :?
Dit gaat trouwens leuk resultaat geven >:) >:) Volgens mij worden alle records gelijk gemaakt aan het laatste record in de resultaat set >:)

Misschien kan je beter dit doen:
PHP:
1
2
3
<?
mysql_db_query("mailing2", "update mailing2 set adres = trim(adres)");
?>

dan kan je het in 1 Query doen.

HTH

Programmer - an organism that turns coffee into software.


Verwijderd

He bedankt voor de supersnelle reply!!!
Ga het ff proberen!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Waar slaat die reactie nou weer op???
Pagina: 1

Dit topic is gesloten.