Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Zmiennne z zapytaniem do bazy
Wojciechovsky
post 13.04.2015, 11:25:17
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 23.03.2015

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


Cześć,

czy tworzenie zmiennych przechowujących zapytania do bazy w taki sposób jest poprawne pod względem optymalizacji?

  1. $sql = "INSERT INTO contacts (email,telefon) VALUES ('$email','$telefon')";
  2. $connection->query($sql);
  3.  
  4.  
  5. $sql2 = "INSERT INTO adresses (ulica,numer_domu,numer_mieszkania,kod_pocztowy,miasto) VALUES ('$ulica','$numer_domu','$numer_mieszkania','$kod_pocztowy','$miasto')";
  6. $connection->query($sql2);
  7.  


Czy prędzej robi się to tak, żeby nie tworzyć miliona zmiennych?

  1. $sql = "INSERT INTO contacts (email,telefon) VALUES ('$email','$telefon')";
  2. $connection->query($sql);
  3.  
  4.  
  5. $sql = "INSERT INTO adresses (ulica,numer_domu,numer_mieszkania,kod_pocztowy,miasto) VALUES ('$ulica','$numer_domu','$numer_mieszkania','$kod_pocztowy','$miasto')";
  6. $connection->query($sql);
  7.  


Go to the top of the page
+Quote Post
viking
post 13.04.2015, 11:37:48
Post #2





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

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


Zapewne nie robi się obu tylko PDO i prepared statements albo zewnętrzny ORM wink.gif
Jeżeli z jakiegoś powodu potrzebujesz zmiennej jeszcze gdzieś to wiadomo że nie ma sensu jej nadpisywać więc tu nie ma reguły.
Twoja metoda jest też słaba bo musisz coś wcześniej pod zmienne podstawić. Już wolałbym sprintf dać do values(). Jest to bardziej czytelne i chociaż łatwo można rzutować typy czy dać mysqli::real_escape_string.


--------------------
Go to the top of the page
+Quote Post
phpion
post 13.04.2015, 11:37:50
Post #3





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




Z optymalizacją ma to niewiele wspólnego, zyskasz tyle co nic. Ja osobiście jednak stosuję nadpisywanie zmiennych (czyli przykład 2) ale z racji czytelności - raziłyby mnie w oczy zmienne $sql2, $sql3, ..., $sql123.
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 Wersja Lo-Fi Aktualny czas: 19.07.2025 - 03:12