這個存儲過程應該能滿足你的要求:
USE tempdb;
GO
IF OBJECT_ID('spshow') IS NOT NULL
DROP PROCEDURE spshow;
GO
CREATE PROCEDURE spshow
@show VARCHAR(20)
AS
BEGIN
IF @show='show db'
BEGIN
SELECT name FROM sys.sysdatabases;
END;
ELSE
IF @show='show schemas'
BEGIN
SELECT name FROM sys.schemas;
END;
ELSE
if @show='show user'
BEGIN
SELECT name FROM sys.sysusers;
END;
ELSE
PRINT '輸入參數超出范圍'
END;
--查詢所有資料庫
EXEC spshow 'show db';
--查詢所有架構
EXEC spshow 'show schemas';
--查詢所有用戶
EXEC spshow 'show user';
❷ 用SQL語句創建存儲過程
--1、創建存儲過程--
if
exists
(select
*
from
sysobjects
where
name='info1')
drop
procere
info1
go
create
procere
info1
@sname
varcher(20),
as
begin
declear
@xinxi
varcher(20)
set
@xinxi='select
學號,姓名,出身日期,系別(注,列名自己設置)
from
student
where
姓名=@sname'
print'@xinxi';
end
--調用存儲過程1--
exec
info1
@sname=姓名
後面的自己參考,可以寫出來
❸ sql怎樣新建存儲過程
一:創建沒有參數的存儲過程:
CREATE PROCEDURE select_all
AS
BEGIN
SELECT * from T_login1
GO
二:創建帶參數的存儲過程:
CREATE PROCEDURE select_name
@id uniqueidentifier
AS
BEGIN
SELECT * from T_login1 where PSN0001A=@id
GO
(3)sql創建存儲過程擴展閱讀:
創建存儲過程的注意事項:
1、保持事務簡短,事務越短,越不可能造成阻塞。
2、在事務中盡量避免使用循環while和游標,以及避免採用訪問大量行的語句。
3、在啟動事務前完成所有的計算和查詢等操作,避免同一事務中交錯讀取和更新。可以使用表變數預先存儲數據。即存儲過程中查詢與更新使用兩個事務實現。
4、超時會讓事務不執行回滾,超時後如果客戶端關閉連接sqlserver自動回滾事務。如果不關閉,將造成數據丟失,而其他事務將在這個未關閉的連接上執行,造成資源鎖定,甚至伺服器停止響應。
❹ SQL創建存儲過程
可能是你的路徑不對,比如你在aaa這個資料庫下面建立了p1存儲過程
但是你的sql查詢窗口是在master資料庫下進行的,這個時候你調用p1是錯誤的,因為master資料庫下沒有p1存儲過程。
❺ sql創建存儲過程
如果不需要帶參數,則
create proc proc_name
as
begin
update a set a.dept_id=b.dept_id
from employees a,departments b
where b.dept_name='經理辦公室'
and (工作年份大於六年)
end
工作年份大於6年不知道你這里要怎麼寫,如果是有一個入職時間的欄位T,
就是datediff(year,a.T,getdate())>6
❻ sql server中怎樣用代碼創建存儲過程
打開SQL server management studio,連接到資料庫,展開想要創建的資料庫,找到【可編程性】->【存儲過程】的菜單
❼ sql 創建存儲過程
❽ 如何創建SQL存儲過程
步驟如下:
在對象資源管理器中,連接到某個資料庫引擎實例,再展開該實例。
展開「資料庫」、sql server存儲過程所屬的資料庫以及「可編程性」。
右鍵單擊「存儲過程」,再單擊「新建存儲過程」。
在「查詢」菜單上,單擊「指定模板參數的值」。
在「指定模板參數的值」對話框中,「值」列包含參數的建議值。接受這些值或將其替換為新值,再單擊「確定」。
在查詢編輯器中,使用過程語句替換 SELECT 語句。
若要測試語法,請在「查詢」菜單上,單擊「分析」。
若要創建sql server存儲過程,請在「查詢」菜單上,單擊「執行」。
若要保存腳本,請在「文件」菜單上,單擊「保存」。接受該文件名或將其替換為新的名稱,再單擊「保存」。
❾ SQL 中創建存儲過程
存儲過程是針對庫而建立的!
所以:要運行一下資料庫
否則:
消息 2812,級別 16,狀態 62,第 2 行
找不到存儲過程 'tea'。
剛才我測試過!
存儲過程是一個文件,但是它還沒保存到磁碟!如果沒有意外的話,那麼還是存在的!