sql查找存儲過程
oracle資料庫中,已建立好的存儲過程信息存儲在系統表ALL_SOURCE 中,需要用sysdba身份登錄資料庫,進行查詢操作,SQL命令如下:
SELECTline,textFROMALL_SOURCE
WHERETYPE='PROCEDURE'
ANDNAME='過程名稱'
ANDOWNER='用戶名'
ORDERBYline;
存儲過程分成多行,每一行會存儲為一條數據,所以,查詢出來的會是多行,line表示行號。
ALL_SOURCE 表中還存儲了以下類型信息:
SQL>selectdistincttypefromall_source;
TYPE
------------
TYPE(對象)類型
TYPEBODY類型體
PROCEDURE存儲過程
FUNCTION函數
TRIGGER觸發器
PACKAGE包
PACKAGEBODY包體
⑵ 如何使用sql語句查看存儲過程
利用數據字典視圖查看當前用戶所有存儲過程及其代碼
select name,text from user_source where type='PROCEDURE'.
⑶ 怎麼查看一個存儲過程的SQL語句
查看一個存儲過程的SQL語句步驟如下:
1、開啟Microsoft SQL Server資料庫管理工具,輸入賬號密碼連接到資料庫。
⑷ sql 存儲過程查詢語句
在資料庫中先創建存儲過程!具體代碼如下:
create proc sp_GetTesttableByname --sp_GetTesttableByname代表存儲過程名稱
as
begin
SELECT nickname,email FROM testtable WHERE name='張三' --存數過程的查詢語句
end
go
exec sp_GetTesttableByname; --查詢存儲過程結果
按下F5執行以上代碼之後 然後再在項目中寫調用存儲過程語句!希望我的回答對你有所幫助,謝謝採納!
⑸ SQL 查找存儲過程中出現過的文字怎麼查詢
在syscomments系統表裡查,結合sysobjects系統表取得過程名
select b.name
from 資料庫名.dbo.syscomments a,資料庫名.dbo.sysobjects b where a.id=b.id and b.xtype='p' and a.text like '%insert into%'
「資料庫名」替換成你實際的資料庫名,因為每個資料庫里的存儲過程都是單獨保存在自己資料庫的syscomments表內,所以要加上資料庫名,這樣就不用在切換資料庫上下文了。另外加密的存儲過程是查不出來的。
⑹ 怎麼查看資料庫存儲過程
查看資料庫存儲過程的方法:
1、打開SQL Server Management Studio找到存儲過程所在的資料庫,在對象資源管理衫飢鎮器詳細信息中可以看到存儲過程的文件夾;
2、在搜索中輸入要搜索的存儲過程名稱肢碧;
3、找到這個SQL存儲過程之後,也可以右鍵點擊菜單中的修改,進入SQL存儲過程編輯;
4、查看SQL存儲過程過程或粗是否帶有參數,因為要執行SQL存儲過程時需要使用的參數;
5、使用的EXEC 存儲過程名和參數來執行SQL存儲過程;
6、最後在下方查看SQL存儲過程執行結。
⑺ SQL Server如何查看一個資料庫里的存儲過程
仔細研究後在csdn上找到了解決該問題的辦法帖出來給大家共享一下
大致方法是利用傳遞長字元串的形式向存儲過程傳遞一個長字元串。由於sqlserver沒有
splite函數
所以必須自己定義一個splite函數來進行處理
自定義一個函數
create
function
f_splitstr(@sourcesql
varchar(8000),@strseprate
varchar(10))
returns
@temp
table(f1
varchar(100))asbegindeclare
@i
int
set
@sourcesql=rtrim(ltrim(@sourcesql))
set
@i=charindex(@strseprate,@sourcesql)while
@i=1begininsert
@temp
values(left(@sourcesql,@i-1))
set
@sourcesql=substring(@sourcesql,@i+1,len(@sourcesql)-@i)
set
@i=charindex(@strseprate,@sourcesql)endif
@sourcesql<''
insert
@temp
values(@sourcesql)returnend-執行select
*
from
dbo.f_splitstr('1,2,3,4',',')
注:'1,2,3,4'即你所傳遞的字元串
同樣你可以通過
select
cunt(*)
from
dbo.f_splitstr('1,2,3,4',',')
獲得該字元串數組的長度
如果要刪除該函數使用--刪除函數drop
function
fsplit