程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> sp_object MYSQL獲取當前實例下指定對象與定義語句內容

sp_object MYSQL獲取當前實例下指定對象與定義語句內容

編輯:MySQL綜合教程

sp_object MYSQL獲取當前實例下指定對象與定義語句內容   [sql] DELIMITER $$          USE `test`$$          DROP PROCEDURE IF EXISTS `sp_object`$$          CREATE PROCEDURE `sp_object` ( p_OBJECTNAME VARCHAR(255), p_DBNAME VARCHAR(255) )     BEGIN     /*     作者:陳恩輝     調用示例:     CALL sp_object ( 'UpdateFactAdGroupDailyUsageByHourly','' );   */     -- 過程與函數     SELECT `type` AS __TYPE, db AS DBNAME ,`name` AS OBJECTNAME ,body AS  DEFINITION      FROM mysql.proc a     WHERE db LIKE  CONCAT(p_DBNAME,'%')          AND `name` LIKE  CONCAT(p_OBJECTNAME, '%')  -- AND `type` = 'PROCEDURE'     -- 表     UNION ALL      SELECT 'TABLE' AS __TYPE, TABLE_SCHEMA,TABLE_NAME ,'' AS  DEFINITION      FROM information_schema.TABLES a       WHERE TABLE_SCHEMA LIKE  CONCAT(p_DBNAME,'%')         AND table_name LIKE CONCAT(p_OBJECTNAME,'%')     -- 觸發器     UNION ALL      SELECT 'TRIGGER' AS __TYPE ,TRIGGER_SCHEMA AS DBNAME ,TRIGGER_NAME ,ACTION_STATEMENT AS DEFINITION  FROM information_schema.`TRIGGERS` a     WHERE TRIGGER_SCHEMA LIKE CONCAT(p_DBNAME,'%')           AND TRIGGER_NAME LIKE CONCAT(p_OBJECTNAME, '%')       -- 視圖     UNION ALL      SELECT 'VIEW' AS __TYPE ,TABLE_SCHEMA AS DBNAME,TABLE_NAME  AS `viewname`,VIEW_DEFINITION AS DEFINITION  FROM information_schema.`VIEWS` a     WHERE TABLE_SCHEMA LIKE CONCAT(p_DBNAME,'%')           AND TABLE_NAME LIKE CONCAT(p_OBJECTNAME, '%')    ORDER BY __TYPE ,DBNAME ;          END$$      DELIMITER ;      

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved