Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql] czyszczenie zbednych rekordow
lucks
post
Post #1





Grupa: Zarejestrowani
Postów: 143
Pomógł: 0
Dołączył: 5.04.2005

Ostrzeżenie: (0%)
-----


witam

narobiło mi sie w bazie sporo smieci, wartosc pola wyswietla sie jako spacja ale nie dzialaja zapytania typu where pole = '' lub where pole = ' ', pole is null
sam juz nie wiem co z tym zrobic, probwalem trucate - tez nie dziala, regexp?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
wieprzucpp
post
Post #2





Grupa: Zarejestrowani
Postów: 85
Pomógł: 2
Dołączył: 10.02.2006

Ostrzeżenie: (0%)
-----


to może sprawdź to przy pomocy komendy strlen, określającej długość ciągu.

if(długość jest równa 1 i jest równa spacji)
{
usuń
}

pozdro ;]

Ten post edytował wieprzucpp 21.11.2007, 23:34:20
Go to the top of the page
+Quote Post
axel_pl
post
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 9.05.2007

Ostrzeżenie: (0%)
-----


zrób po prostu zeby usunac wszystki wpisy ponizej 2 znakow


--------------------
http://www.jp.packs.pl jPortal z przyszłością
http://www.zsyp.no-ip.com/axel/jportal.html - Oficjalny support jP UserPatch && Packs
http://www.zsyp.pl - Oficjalny support
Go to the top of the page
+Quote Post
lucks
post
Post #4





Grupa: Zarejestrowani
Postów: 143
Pomógł: 0
Dołączył: 5.04.2005

Ostrzeżenie: (0%)
-----


sprawa jest nieco bardziej zlozona dlatego ze w polu mogą znalez sie porprawne odpowiedzi w postaci liczby, lub cyfry ale rózniez string
2 -ok
5-ok
4444-ok
aabbcc-ok
22hh44 -ok
' ' -nie ok przy czym tak jak pisalem, mimo ze wyglada jak spacja nie moge tych rekordow wyciagnoc ani sakoswac zadnym zapytaniem
Go to the top of the page
+Quote Post
phpion
post
Post #5





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Dlaczego nie możesz? Spróbuj:
  1. DELETE FROM tabela WHERE pole=" ";

lub
  1. DELETE FROM tabela WHERE pole LIKE " %";
Go to the top of the page
+Quote Post
lucks
post
Post #6





Grupa: Zarejestrowani
Postów: 143
Pomógł: 0
Dołączył: 5.04.2005

Ostrzeżenie: (0%)
-----


tego proboealem juz wczesiej, niestety nie dziala sad.gif ,
co ciekawe
  1. LIKE " %"

zwraca wszystkie pola w których sa stringi i one wszystkie zaczynaja sie od tej dziwnej spacji, niestety tych gdzie jest tylko spacja nie zwraca, pola w których są warosci numereczne nie ma spacji wogole....

cos mi sie wydaje ze nie uda sie tak tego wyciac wiec moze z drogijej strony... wyciagnac wszytkie stringi i wartosci numeryczne dac negacje i kasowac?

problem w tym ze o ile
  1. SELECT * FROM TABLE WHERE pole REGEXP (^[0-9]$)


zwraca mi wszystkie pola numeryczne,to

  1. SELECT * FROM TABLE WHERE pole NOT REGEXP (^[0-9]$)


wcale nie chce pol nie numerycznych, jak dodam jeszcze stringi to juz masakra wyniki sa jak dla mnie zupelnie nieprzewidywalne

[edit]

nikt nie ma pomysłu jak by mozna to wyczyscic? ew jak zidentyfikowac dziwną spację? moze byc tez sposob na wuciagniecie wszystkich innych rekordow poza tymi ze spacją

Ten post edytował lucks 25.11.2007, 13:39:43
Go to the top of the page
+Quote Post
maziak
post
Post #7





Grupa: Zarejestrowani
Postów: 155
Pomógł: 17
Dołączył: 9.07.2007

Ostrzeżenie: (0%)
-----


Witaj, nie wiem czy zadziala ale warte proby :

Zobacz do czego w ASCII jest przypisana ta spacja,bo mozliwe ze to jakis "dziwny znak" skoro zwyczajnie nie dziala, poprzez wybranie ja z bazy i :
  1. <?php
  2. $znak=ord($zmienna);
  3. ?>


a potem w zapytaniu SQL przez php :
  1. <?php
  2. $zapytanie= "select * from costam where cosjeszcze='".chr($znak)."' ";
  3. ?>


Ten post edytował maziak 25.11.2007, 13:54:50
Go to the top of the page
+Quote Post
lucks
post
Post #8





Grupa: Zarejestrowani
Postów: 143
Pomógł: 0
Dołączył: 5.04.2005

Ostrzeżenie: (0%)
-----


thumbsupsmileyanim.gif thumbsupsmileyanim.gif thumbsupsmileyanim.gif thumbsupsmileyanim.gif

zadziałało dzieki, ascii 160.... dziwne
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 18:02