Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySQL wstawia wiele rekordów za pomocą pętli while

Tworzenie procedury spełniającej Twoje wymagania nie ma sensu.

Załóżmy, że zadziałało to przy pierwszym uruchomieniu, ale procedura tworzenia pokaże błąd w następnym uruchomieniu, ponieważ procedura już istnieje.

Wystarczy uruchomić zapytanie wstawiające kilka razy lub zbudować zapytanie wstawiające z wieloma wartościami i uruchomić je raz. Oto, co moim zdaniem powinieneś zrobić.

1.for($i=0;$i< $qty;$i++){ $sql = "INSERT INTO table_name (field1,field2,fieldn) VALUES ('field-val1','field-val2','field-valn')"; $result = mysql_query($sql) or die ( mysql_error()); } Lub podejdź do 2

$sql = "INSERT INTO table_name (field1,field2,fieldn) VALUES";

for($i=0;$i< $qty;$i++){
  $sql .= "('val1','val2','valn')";
  if($i < ($qty -1 )){
     $sql .=",";
   }

 }

$result =mysql_query($sql) lub zgiń ( mysql_error());



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Uczestnictwo w zapytaniu Streak MySQL

  2. Jak napisać wyzwalacz, aby przerwać usuwanie w MYSQL?

  3. Typ MySQL=Błąd MyISAM

  4. Czy tabela Join (tabela asocjacyjna) ma klucz podstawowy? wiele do wielu relacji

  5. Zapytanie SQL wielu wartości w jednej komórce