Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> MySQL - dodanie seryjne rekordów
arpi
post
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 7.01.2011

Ostrzeżenie: (10%)
X----


Witam
Do tej pory wszytskie zapytania do bazy wykonuje z poziomu PHP, jendak przy dużych ilościach danych zauważam problemy z wydajnością.
Chciałbym część zapytań wykonywać bezpośrednio na bazie MySQL.

Czy może ktoś wie jak zrobić poniższe zapytanie (pętle) bez zastosowania php ?

  1.  
  2. $i = 0;
  3.  
  4. for($i; $i<31262; $i++){
  5. $insert = mysql_query("INSERT INTO nazwa_tabeli (id_product, priority) values ($i, 'taki sam ciąg znaków')");
  6. echo $i.'<br>';
  7. }
  8.  


z góry wielkie dzięki
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sazian
post
Post #2





Grupa: Zarejestrowani
Postów: 1 045
Pomógł: 141
Dołączył: 19.09.2006
Skąd: B-tów

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


Domyślam się że viking miał na myśli coś w wym stylu
  1. $values=[];
  2. for($i=0; $i<31262; $i++){
  3. $values[]="($i, 'taki sam ciąg znaków')";
  4.  
  5. }
  6. $insert = mysql_query("INSERT INTO nazwa_tabeli (id_product, priority) values ".implode(',',$values));

chociaż przy takich ilościach rekordów i tak może to być wolne.
Ewentualnie można by się pokusić o napisanie jakiejś procedury sql która będzie "robiła pętle", istnieje szansa że będzie to trochę szybsze niż wysyłanie tak dużego zapytania
https://dev.mysql.com/doc/refman/5.7/en/while.html

Ten post edytował sazian 23.07.2019, 20:25:06
Go to the top of the page
+Quote Post

Posty w temacie


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: 3.11.2025 - 11:32