http://www.mysqlkorea.co.kr
Çѱ۸Ŵº¾ó 5.0 , Çѱ۸Ŵº¾ó 5.1 , MySQL 5.1 HA , »ç¿ëÀڸŴº¾ó
°øÁö»çÇ×  
´º½º  
Áú¹®°ú ´äº¯
DBA
Developer
Cluster
ÅäÅ©¹Ú½º  
À̺¥Æ®  
¼­Æ÷Æ® ƼÄÏ  
ÃֽűÛ
foreign key ¼³Á¤¡¦
ÀÎÅØ½º Ãß°¡ µî¿¡¡¦
mysql master - s¡¦
´Ù´ë´Ù °ü°è¿¡¼­ ¡¦
mysql myÆÄÀϰú ¡¦
 
Áú¹®°ú ´äº¯ (Developer) > Ä¿¹Â´ÏƼ Á¸ > Áú¹®°ú ´äº¯ (Developer)
Procedure Áú¹® µå¸³´Ï´Ù.
±Û¾´ÀÌ : darkturtle   ³¯Â¥ : 14-11-24 14:33   Á¶È¸¼ö : 5948

´Ù¸¥ DBMS ¸¸ »ç¿ëÇÏ´Ù À̹ø¿¡ óÀ½À¸·Î MYSQL À» »ç¿ëÇÏ°Ô µÇ¾ú½À´Ï´Ù.
ÀÔ·Â °ªÀ» LIKE °Ë»ö ÇÏ¿©, ±× °á°ú¸¦ Å×ÀÌºí¿¡ ÀúÀåÇÏ´Â PROCEDURE Àε¥
¿¡·¯·Î ¾ø°í, INSERT µµ µÇÁö ¾Ê¾Æ Áú¹® µå¸³´Ï´Ù.
¸¹Àº Á¶¾ð ºÎʵ右¤¤µð¤¿.


ÇÁ·Î½ÃÁ® Áú¹® µå¸³´Ï´Ù.
-----------------------------------------------------------------
-----------------------------------------------------------------
CALL CHK_TABLES('BKG_EBL_AVC');
-- °á°ú È®ÀÎ
SELECT * FROM CHK_TABLES_T
-- °ª ¾øÀ½
-----------------------------------------------------------------
-- °á°ú ÀúÀå Å×À̺í

CREATE TABLE CHK_TABLES_T ( TABLE_NAME VARCHAR(30), CHK_NUM INT )
-----------------------------------------------------------------
-- ÇÁ·Î½ÃÁ® ½ºÅ©¸³Æ®
-----------------------------------------------------------------

DELIMITER $$

DROP PROCEDURE IF EXISTS `dbsafer_log_2014_11`.`CHK_TABLES`$$

CREATE DEFINER=`root`@`%` PROCEDURE `CHK_TABLES`( IN TB_NAME VARCHAR(30))
BEGIN
  DECLARE ERR INT DEFAULT '0';
  DECLARE TARGET_NUMBER INT DEFAULT '0';
  DECLARE TARGET_TABLE VARCHAR(30);
  DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET ERR = -1 ;
 
  SET TARGET_TABLE = TB_NAME ;
  SET TARGET_NUMBER = ( SELECT COUNT(*) AS ALL_ROWS FROM db_qinfo WHERE UPPER(tbl_names) LIKE CONCAT('%',TB_NAME,'%') );

 START TRANSACTION ;
  SELECT TARGET_NUMBER ;
  INSERT INTO CHK_TABLES_T ( TABLES_NAME, CHK_NUM ) VALUES ( TARGET_TABLE, TARGET_NUMBER) ;

 IF ERR < 0 THEN
   ROLLBACK;
 ELSE
 COMMIT;
 END IF;
   
END$$

DELIMITER ;
royster
rollback ½ÇÇàµÈ °ÍÀ¸·Î º¸ÀÔ´Ï´Ù.

¾Æ·¡ ±¸¹®À¸·Î ÀÎÇÏ¿©  ERR º¯¼ö°¡  0º¸´Ù ÀÛÀ¸¹Ç·Î rollback ½ÇÇà..

SET TARGET_NUMBER = ( SELECT COUNT(*) AS ALL_ROWS FROM db_qinfo WHERE UPPER(tbl_names) LIKE CONCAT('%',TB_NAME,'%') );
ÀÌÀü±Û À¥¼­¹ö db¼­¹ö ¿¬°á 
´ÙÀ½±Û TableÀÇ ÃÖÁ¾ °»½ÅµÈ ³¯Â¥¸¦ ±¸ÇÏ°í ½Í½À´Ï´Ù. 
MySQL Korea »çÀÌÆ®ÀÇ ÄÁÅÙÃ÷ ¼ÒÀ¯±ÇÀº (ÁÖ)»ó»óÀ̺ñÁî¿¡ ÀÖÀ¸¹Ç·Î ¹«´ÜÀüÀ縦 ±ÝÇÕ´Ï´Ù.
Copyright ¨Ï ssebiz All Rights Reserved.