![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 156 Pomógł: 0 Dołączył: 4.02.2003 Skąd: Wejherowo Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Mam problem z baza... poprzedni skrypt nie mial zabezpieczenia przez dodawaniem do bazy kilku tych samych wpisow - przez co teraz baza ma spore rozmiary. Jak wykryc i wykasowac niepotrzebne (powtarzajace sie) wpisy w bazie? Z gory dzieki za pomoc. |
|
|
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Jesli te wpisy czyms sie roznia, np id, to wyszukaj wszystkie id dla tego samego wpisu i usuń wszystkie oprócz jednego.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 0 Dołączył: 1.12.2003 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
Użyj składni [sql:1:0c96abf79f]SELECT DISTINCT(pole) FROM ....[/sql:1:0c96abf79f] wyciągnie Ci to unkialne rekordy , zapamiętaj je , wywal stare i zaimportuj zapamietane...
Jednak moja teoria może być zła :? jeśli nie zamiścisz tu struktury tabeli i rodzaju rekordów , z poprawny rozwiązaniem może być ciężko. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 156 Pomógł: 0 Dołączył: 4.02.2003 Skąd: Wejherowo Ostrzeżenie: (0%) ![]() ![]() |
Ale macie jakies sprawdzone skrypty?
Bo nie chcial bym stracic zawartosci bazy. |
|
|
![]()
Post
#5
|
|
Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
Cytat Ale macie jakies sprawdzone skrypty?
Bo nie chcial bym stracic zawartosci bazy. To zrob kopie! Bez kopii nawet sprawdzonym skryptem bym sie nie odwazyl gmerac w produkcyjnej bazie. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 156 Pomógł: 0 Dołączył: 4.02.2003 Skąd: Wejherowo Ostrzeżenie: (0%) ![]() ![]() |
Mam juz kopie ;-) Tylko mimo wszystko nie chcial bym miec balaganu w bazie bo ponowna instalacja tej bazy to jakies 6 godzin roboty
Momo wszystko... moze jednak ktos ma takowy skrypcik? Sprawdzony. |
|
|
![]()
Post
#7
|
|
Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Cytat ponowna instalacja tej bazy to jakies 6 godzin roboty Ke?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Cytat mysql -u user -ppass database < dump.sql Zajmuje Ci 6 godzin?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Pierwsze zapytanie
[sql:1:6bc079b160]SELECT nazwa, id, COUNT(*) AS ilosc FROM aaa GROUP BY nazwa HAVING ilosc>1 [/sql:1:6bc079b160] i potem w php w pętli usuwasz rekordy, dla id pobranych z bazy. Oczywiście 'nazwa' to jest nazwa tej kolumny, która sie powtarza. BTW: sprawdź najpierw phpmyadminie to zapytanie co Ci zwraca. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Drugi sposób - tworzysz drugą taką samą tabelę o nazwie np. nowa_tabela
Potem: [sql:1:070e6993c3]INSERT INTO nowa_tabela SELECT DISTINCT * FROM stara_tabela[/sql:1:070e6993c3] a potem kasujesz starą, nowej zmieniasz nazwe i tyle. PS. Google mogą (prawie) wszystko: http://www.google.com/search?q=how+to+dele...ntries+in+mysql |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 15:22 |