Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Przenoszenie rekordów
Forum PHP.pl > Forum > Przedszkole
-Ciekawy-
Mam pytanie, pewnie głupie, ale liczę na Waszą pomoc. Mam tabele z rekordami, opisującymi czynności z danych dni. Ponieważ czynności na dany dzień jest dużo, chciałbym bezkolizyjnie przenieść te starsze do archiwum. Jednakże w tym miejscu mam czarną dziurę w głowie - Jak masowo zczytać rekordy starsze niż np 2008-05-01. Dokładnie zależy mi na "masowym zczytaniu" i "masowym wstawieniu" w tabeli archiwum. Pomożecie jakimś przykładem?
loganek
Kod
$wynik=mysql_query("select * from tabela where tabela_data<'2008-05-01'");
while($rekord=mysql_fetch_array($wynik)){
mysq;_query(insert into archiwum values(tu wiesz co zrobic;))");
}
mysql_query("delete from tabela where tabela_data<'2008-05-01'");

nie weim czy ten warunek mysqlowy jest poprawny, ale kod w php mniej więcej taki;)
-Ciekawy-
Własnie nie mam pomysłu jak to zebrać. Do tablicy? INSERT INTO tabela SET questionmark.gif i tu nie wiem jak to ugryść
Kihol
Najłatwiej użyć do tego phpmyadmin.
Wybierasz sobie tablę z której chcesz zrzucić dane. Dajesz szukaj, lub wpisujesz zapytanie z palca :
  1. SELECT * FROM tabela WHERE DATA > '2008-05-01';

Następnie wybierasz exportuj i exportujesz do pliku. W pliku zmieniasz nazwę tabeli (np. było czynnosci, zmieniasz na czynnosci_arch). Jeśli robisz archiwizację pierwszy raz, powinieneś wyexportować również strukturę tabeli. Wtedy wystarczy zaimportować tak zmieniony plik z powrotem do phpmyadmin-a.
-Ciekawy-
Tyle to wiem. Chodzi bym mógł to zrobić ze skryptu.(cykliczna archiwizacja)
Kihol
No to wtedy robisz, jak opisał loganek.
A insert into wpisujesz swoje pola, które przecież znasz.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.