搜尋資料庫儲存過程或者函式中的內容
資料庫儲存過程或者函式中,有可能在開發過程中寫死了某些值,例如郵箱,在某人離職的時候,接替人必須要進行切換,如果才能按照關鍵字快速的搜尋資料庫儲存過程及函式中的內容呢?
針對SQL server和Oracle分別進行介紹
1.SQL server(以2008的版本為例)
sys.sql_modules 系統表,會儲存資料庫物件ID和物件的內容,例如儲存過程,儲存過程的內容會在此表中儲存
sys.objects 系統表,儲存資料庫物件ID和資料庫物件名稱,結合上面的表即可找到關鍵字所在的儲存過程或者函式
舉例
USE Budget go SELECT * FROM sys.objects WHERE object_id IN ( select t.object_id from sys.sql_modules t where t.definition like '%sunjian5%' )
執行後即可查詢到
2.Oracle 以使用PL/SQL為例
PL/SQL直接提供了圖形化的方式 TOOLS-->FIND DATABASE OBJECTS
輸入你要搜尋的關鍵字和你需要在哪些物件中搜索的範圍即可查到
相關推薦
搜尋資料庫儲存過程或者函式中的內容
資料庫儲存過程或者函式中,有可能在開發過程中寫死了某些值,例如郵箱,在某人離職的時候,接替人必須要進行切換,如果才能按照關鍵字快速的搜尋資料庫儲存過程及函式中的內容呢? 針對SQL server和Oracle分別進行介紹 1.SQL server(以2008的版本為例) sys.sql_modu
Oracle中儲存過程和函式中IS和AS的區別
在儲存過程(PROCEDURE)和函式(FUNCTION)中沒有區別; 在檢視(VIEW)中只能用AS不能用IS; 在遊標(CURSOR)中只能用IS不能用AS。 --記住就行了,沒什麼技巧.-_-.
MySQL修改儲存過程或者函式所有者
use mysql;//此處是資料庫自身建立的系統資料庫名字是mysql UPDATE mysql.proc set DEFINER='新所有者名稱' where DEFINER='舊所有者名稱'
儲存過程或函式中輸出Long value值
很多時候我們在除錯函式或儲存過程的時候,經常會遇到想看變數的值,但是卻顯示Long value,讓人很頭疼,特此在這裡寫了一個過程,可用來在DBMS Output 視窗輸出變數的值,可支援長達4GB的
Oracle資料庫儲存過程和函式的區別
儲存過程 函式 作為PL/SQL語句執行 作為表示式的一部分呼叫 在規範中不包含RETURN子句 必須在規範中包含RETURN子句 不返回任何值 必須返回單個值 可以包含RETURN語句,但是與函式不同,它不能用於返回值 必須包含至少一條
sql(join中on與where區別) / NVL函式 / oracle儲存過程中is和as區別 / JAVA呼叫資料庫儲存過程
left join :左連線,返回左表中所有的記錄以及右表中連線欄位相等的記錄。 right join :右連線,返回右表中所有的記錄以及左表中連線欄位相等的記錄。 inner join: 內連線,又叫等值連線,只返回兩個表中連線欄位相等的行。 full join:外連線,返回兩個表中的行:left jo
oracle資料庫儲存過程中建立函式
最近,專案需要通過呼叫儲存過程初始化資料庫,根據使用者名稱建立該使用者下的所有表的檢視但是因為在專案中,檢視是通過execute immediate 字串 實現的,所以想,那麼函式的建立是否也可以使用這種方式呢:說幹就幹,最後還真成功了 程式碼如下 CREATE OR RE
資料庫儲存過程,觸發器,遊標,函式
MySQL5 中添加了儲存過程的支援。 大多數SQL語句都是針對一個或多個表的單條語句。並非所有的操作都這麼簡單。經常會有一個完整的操作需要多條才能完成。 儲存過程簡單來說,就是為以後的使用而儲存的一條或多條MySQL語句的集合。可將其視為批檔案。雖然他們的
資料庫儲存過程及儲存函式
儲存過程 在java中經常用封裝的思想來提高程式碼的重用性,在java中為什麼要定義方法?原因是有一個功能是需要在不同的地方多次使用的,如果在每一個需要呼叫的地方都寫一遍會造成程式碼量很大,所以我們把他抽取成單獨的方法,在需要使用的時候呼叫這個方法。同樣的道理,如果同一個資料庫操作需要被多次使用
資料庫系統概論05-動態SQL&儲存過程&函式
動態SQL 使用SQL語句主變數 EXEC SQL BEGIN DECLARE SECTION; const char *stmt="CREATE TABLE test(a int);"/*SQL語句主變數,內容是建立表的SQL語句*/ EXEC SQL END DECLARE SE
實習複習--資料庫儲存過程與儲存函式&&觸發器8
儲存過程: 1定義:就是為了適用於針對資料庫的某一個重複功能的開發。就是多條sql語句的集合, 2使用規則 建立儲存過程create procedure 儲存過程名(in/out/inout 引數名 資料型別) begin sql語句的集合 end 3儲存
MySQL中的儲存過程和函式使用詳解
一.對待儲存過程和函式的態度 在實際專案中應該儘量少用儲存過程和函式,理由如下: 1.移植性差,在MySQL中的儲存過程移植到sqlsever上就不一定可以用了。 2.除錯麻煩,在db中報一個錯誤和在應用層報一個錯誤不是一個概念,那將是毀滅性打擊,直接一個error:1045什麼的更本毫無頭緒。 3.擴充套件
mysql資料庫學習11-儲存過程、函式、觸發器
儲存的程式 ======================================== * 資料庫中儲存的程式,對資料進行運算處理 * 儲存過程 * 函式 * 觸發器 會話變數
Sql資料庫儲存過程傳值(傳遞資料表名,列名),sp_executesql函式的使用
遇到的專案需求是:對幾個不同的資料表和相應的欄位進行類似的操作,表的名稱和相關的列名可以作為儲存過程的引數傳遞,這樣可以使用遊標遍歷不同表格的不同的列,再使用相同函式求出返回值進行統一的處理。由於專案中表的資料龐大,關係複雜,此處做簡化處理,描述大致意思。(此處的資料庫是SQ
oracle資料庫儲存過程中的select語句的位置
導讀:在oracle資料庫儲存過程中如果用了select語句,要麼使用"select into 變數"語句要麼使用遊標,oracle不支援單獨的select語句。 先看下這個儲存過程: create or replace procedure pro_test is begin&n
從機房重構中學習資料庫——儲存過程和觸發器
開門見山,我也是在機房中學習使用儲存過程,看來大家的部落格,慢慢的使用,接觸了一段時間還是有點模糊。簡單總結一下。
MyBatis中呼叫儲存過程和函式
一.呼叫儲存過程 1.首先在資料庫中定義儲存過程,定義的儲存過程的程式碼如下: //定義儲存過程create or replace procedure pag_add(p1 varchar2,p2 varchar2,p3 out varchar2) as begin
資料庫儲存過程,事務 jfinal中呼叫儲存過程,事務
mysql DELIMITER $$ CREATE PROCEDURE `student`.`ceshi`(n INT,j CHAR(1)) BEGIN IF j = 'h' THEN SELECT * FROM blog
初學mysql(十)-資料庫之儲存過程、函式與遊標-自定義函式和流程控制(下)
上一篇部落格講了儲存過程、函式、以及遊標,這一篇部落格接著上一篇部落格來說。首先說說mysql資料庫中的流程控制及自定義函式的使用。 自定義函式: 根據所需要的功能,使用流程控制來完成所需要的功能,完成功能的程式碼就稱為自定義函式。要想完成自定義函式就必須學會流程控制的使
查詢資料庫儲存過程中包含某字串的所有儲存過程名稱
select name from sysobjects o, syscomments s where o.id = s.id and text like '%querytext%' and o.xtype = 'P' ORDER BY name 將querytext替