Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Insert- porównanie czasów
konkelka
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 20.05.2007

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


Witam!

Chciałabym się dowiedzieć skad takie różnice w czasach jesli stosuje polecenie INSERT i wstawiam za pomocą pętli 1000 takich samych rekordów do poszczególnych baz danych.

Oto moje wyniki:

MYSQL- 18,26373989583

ORACLE- 1,80383136272

ACCESS- 1,11975848675

Bardzo proszę o odpowiedź co może być przyczyną tego, że MySQL tak odstaje ;/

Pozdrawiam
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Pokaz jeszcze jak to testujesz.
Uzywasz prepared statements? Ile rekordow miales wczesniej w bazie? Ile masz indexow w tej tabeli? Typy tabeli? itd.
Go to the top of the page
+Quote Post
konkelka
post
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 20.05.2007

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


Wpisuje dane do pusych baz danych, zlozonych z 3 kolumn. Tabele są identyczne w każdej bazie danych.

Kod Mysql
Kod
<?php


function microtime_float() {
   list($usec, $sec) = explode(" ", microtime());
   return ((float)$usec + (float)$sec);
}


$connect=mysql_connect("localhost", "root", "haslo") or die("Sprawdz połączenie z serwerem");

mysql_select_db("osoby");


$time_start =microtime_float();

for($i=1; $i<=1000; $i++)
{

$sql="INSERT INTO `inserto` (`Imie` , `Nazwisko` , `Miasto` )
VALUES ('Jan', 'Patrykowski', 'Tczew'
)";

if (!mysql_query($sql,$connect))
  {
  die('Error: ' . mysql_error());
  }
}
echo "records added";


$time_end =microtime_float();
echo $time_end -$time_start;

mysql_close($connect)


?>


Kod Oracle
Kod
<?php  
function microtime_float() {
   list($usec, $sec) = explode(" ", microtime());
   return ((float)$usec + (float)$sec);
}


$connect = oci_connect("system", "haslo");

$time_start =microtime_float();

for($i=1; $i<=1000; $i++)
{


$stmt = oci_parse($connect, "INSERT INTO inserto(IMIE, NAZWISKO, MIASTO) VALUES ('Jan', 'Patrykowski', 'Tczew')");
oci_execute($stmt);


}
echo "records added";


$time_end =microtime_float();
echo $time_end -$time_start;

?>


Kod Access
Kod
<?


function microtime_float() {
   list($usec, $sec) = explode(" ", microtime());
   return ((float)$usec + (float)$sec);
}


       $dsn = "access";
       $user = "Admin";
       $password = "rybka";
    $link = odbc_connect($dsn,$user,$password)
    or die ('dupa z polaczenia ');



$time_start =microtime_float();

for($i=1; $i<=1000; $i++)
{


       $query = "INSERT INTO `inserto` (`IMIE`, `NAZWISKO`, `MIASTO`) VALUES ('Jan', 'Patrykowski', 'Tczew' )";

$result= odbc_exec($link,$query);
}
echo "records added";


$time_end =microtime_float();
echo $time_end -$time_start;
?>
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.12.2025 - 22:50