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

Jak tworzyć i wykonywać procedury w środowisku MySQL?

Czy zakończyłeś całe zapytanie? Spróbuj ustawić ogranicznik i użyj go po END, aby serwer wiedział, że zakończyłeś polecenie.

separator
delimiter //
CREATE PROCEDURE fill_points( 
IN size INT(10) 
) 
BEGIN 
DECLARE i DOUBLE(10,1) DEFAULT size; 

DECLARE lon FLOAT(7,4); 
DECLARE lat FLOAT(6,4); 
DECLARE position VARCHAR(100); 

-- Deleting all. 
DELETE FROM Points; 

WHILE i > 0 DO 
SET lon = RAND() * 360 - 180; 
SET lat = RAND() * 180 - 90; 

SET position = CONCAT( 'POINT(', lon, ' ', lat, ')' ); 

INSERT INTO Points(name, location) VALUES ( CONCAT('name_', i), GeomFromText(position) ); 

SET i = i - 1; 
END WHILE; 
END //
delimiter ;

Ponadto, by

Podczas gdy DELETE FROM TABLE usuwa wszystkie dane z tabeli, TRUNCATE table robi to szybciej. Chyba że masz dobre powody, aby użyć DELETE (istnieją), TRUNCATE może być tym, czego chcesz.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Paginacja MySQL oparta na kursorach z wieloma kolumnami

  2. Jak korzystać z implementacji AES_DECRYPT() MySQL przez Python?

  3. Jak usunąć część ciągu w mysql?

  4. Najlepszy sposób na archiwizację bazy danych MySQL na żywo

  5. MySQL wstaw wiersz przy zduplikowanym kluczu zaktualizuj wiele kolumn