Ile wirszy wlezie do MySQL?

Języki, których efekty są wykonywane po stronie serwera. PHP, ASP czy CGI w połączeniu z bazami danych SQL dają niezwykłe możliwości budowy i zarządzania stron WWW. Tu zadajemy pytania oraz demonstrujemy kod, z którym mamy problem.
majkey
Nowy
Nowy
Posty: 42
Rejestracja: śr lis 26, 2003 3:31 pm
Lokalizacja: Białystok

Ile wirszy wlezie do MySQL?

Post autor: majkey »

Witam!
Próbowałem wrzucić o tabeli 300.000 wierszy typu "Jan Kowalski".
Ale PHP wydarł się ze czas wykonywania skryptu jest dłuższy niż 30 sek i mówi dowidzenia. Czasami pasek postepu w przeglądarce idzie, idzie, idzie i sie zatrzymuje.
Może ktoś wie dlaczego nie chce PHP w pętli w pierniczyć 300.000 wierszy.
Kod skryptu:

[php]<?php
$link=mysql_connect("localhost","","");
mysql_create_db("Antykwariaty");
mysql_select_db("Antykwariaty",$link);
$zapytanie = "CREATE TABLE Publikacje ( ".
"id int DEFAULT '0' NOT NULL auto_increment,".
"autor char(100),".
"tytul char (100),".
"UNIQUE id (id),".
"PRIMARY KEY (id)".")";
$wynik=mysql_query($zapytanie);
for($i=0;$i<300000;$i++)
{
$zapytanie="INSERT INTO Publikacje VALUES('','Jan Kowalski $i','Matematyka $i')";
$wynik=mysql_query($zapytanie);
}
mysql_close($link);
?>[/php]
Jakieś sugestie, uwagi?
Czekam na odpowiedz.
Za poświęcony w mojej sprawie czas z góry THX!
Grzegorz Winiarski
Nowy
Nowy
Posty: 147
Rejestracja: pt lut 27, 2004 10:36 pm
Lokalizacja: Kraków

Re: Ile wirszy wlezie do MySQL?

Post autor: Grzegorz Winiarski »

Wstaw wewnątrz pętli for coś takiego:
[php]
<?php
set_time_limit(5);
?>
[/php]
U mnie wstawil 286 000 wierszy, ale to tylko dlatego ze sam przerwałem wykonywanie skryptu (trwało to ponad 5 minut). Sądze, że jeśli poczekasz odpowiednio długo to wszystko bedzie w porzadku.
dzieciol4
Nowy
Nowy
Posty: 120
Rejestracja: pt sie 23, 2002 8:22 am
Lokalizacja: Szczecin

Re: Ile wirszy wlezie do MySQL?

Post autor: dzieciol4 »

a ja mam takie glupie pytanie: po co ci to ??? :)
siker
Posty: 5
Rejestracja: wt mar 09, 2004 12:48 am
Kontakt:

Re: Ile wirszy wlezie do MySQL?

Post autor: siker »

Jesli chodzi o ograniczenie to MSSQL posiada gorna granice do 1 000 000 wierszy.
Dreen
Zaczyna działać
Zaczyna działać
Posty: 633
Rejestracja: pn paź 20, 2003 6:32 pm
Lokalizacja: Żywiec

Re: Ile wirszy wlezie do MySQL?

Post autor: Dreen »

ja sadze ze to bardziej zalezy od pamieci wirtualnej na serwerze, ale jesli naprawde potrzebujesz wykonac xxxxxxxx razy jakas petle to podziel ja na dwie, moze trzy kolejne petle. na przyklad:
[php]<?php
for ($q=0; $q<200000; $q++)
{
echo "wiersz $q<br>";
}
?>[/php]mozna zapisac[php]<?php
$e = 0;
for ($q=0; $q<4; $q++)
{
for ($w=0; $w<50000; $w++)
{
echo "wiersz $e<br>"; $e++;
}
}
?>[/php]
nie wiem czy zadziala, ale wiem, ze przy 50000 wyrabia sie juz napewno (tylko nie wiem czy akurat taka konstrukcja zadziala).
ODPOWIEDZ