mysql存儲過程簡單例子


1.之前經常在oracle數據庫中使用存儲過程,換到mysql后用的不多,但是有時候也用,大致記錄一下,基本和oracle的一樣。

CREATE DEFINER = `root`@`%` PROCEDURE `NewProc`()
BEGIN
  DECLARE done INT DEFAULT FALSE;
  DECLARE n_id decimal;
  DECLARE cur1 CURSOR FOR SELECT b.ID FROM book_fs AS b where b.BOOKID NOT IN (SELECT ID FROM media) ORDER BY b.ID limit 500000;
  DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
  -- 打開游標
    OPEN cur1;
  REPEAT
    FETCH cur1 INTO n_id;
    IF NOT done THEN
            DELETE from book_fs where id = n_id;
    END IF;
  UNTIL done END REPEAT;
  CLOSE cur1;
END;

2.統計所有表數據量

use information_schema;
select table_name,table_rows from tables where TABLE_SCHEMA = 'your_DB_name' order by table_rows desc;

  -- 說明:以上語句得出的行統計數量,並不精確,是一個大約估計的數量

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM