用SQL建立儲存過程的題目(SQL SERVER2019下)

2021-07-13 09:10:51 字數 1855 閱讀 9570

1樓:匿名使用者

set quoted_identifier ongoset ansi_nulls on

gocreate proc a --建立儲存過程名字為a,再次執行時將create改為alter

@sname nvarchar(100)='' --傳遞的引數asselect a.sno,b.cname,c.

grade from student a,course b,sc c --分別給表命名為a,b,c

where a.sname=@sname and a.sno = c.sno and b.cno=c.cno --查詢條件

go set quoted_identifier offgoset ansi_nulls on

goexec a '名字' --執行儲存過程語句,可在儲存過程外這次呢?

2樓:匿名使用者

oracle下的procedure

create or replace procedure get_imfor(name varchar2,no out number,

v_cname out varchar2,v_grade out number)

--name 預設為輸入引數,no、v_canme、v_grade為輸出引數

isbegin

select a.sno,b.cname,c.grade into no,v_cname,v_grade

from student a,course b,sc c

where a.sno=c.sno and

b.cno=c.cno and

upper(s.name)=upper(name);

--upper()函式將字串全部小寫,也就是忽略大小寫的意思

end get_imfor;

這是oralce下的過程,sql server下,就需要你自己稍加修改

3樓:匿名使用者

set ansi_nulls on

goset quoted_identifier ongocreate procedure sp_getinfo@ag_sname nchar(10) --傳遞的引數asbegin

select 你想要的字段

from student a,

course b,

sc c

where a.sno = c.sno

and b.cno = c.cno

and trim(a.sname) = @ag_sname --簡單的鏈結,把引數寫到語句裡

endgo

--執行語句 exec sp_getinfo '名字'

4樓:化卯

create proc myproc

@sname nvarchar(50)

asdeclare @sno int --比如是學號declare @cname nvarchar(50)--比如是課程名稱

declare @grade int --比如是課程成績select @sno=st.sno,@cname=co.cname,@grade=sc.

grade from student as st

inner join sc as sc on sc.sno=st.sno inner join course as co on co.

cno=sc.cno where st.sname=@sname

print @sno

print @grade

print @cname

exec myproc '姓名'

你可以根據此儲存過程並針對你資料庫所需要的字段進行修改,在不了解你資料庫字段意義的情況下只能幫你這麼多

sql語句,儲存過程,智慧型更新,SQL 乙個儲存過程中 執行兩個更新操作 怎麼寫

簡單啊,用if判定一下就可以了啊,在update之前先判定name是否為空 if isnull name,update 表 set username username where id id 同等道理,age也一樣的做就可以了。當然,判定條件並列的話,你可以一起判定 如果想使用多條語句的話,有兩種方...

mysql儲存過程引數能放到sql語句最後面嗎

不可以delimeter create procedure pro latest in num int begin set n num prepare sqlstring from select from product order by timestamp desc limit execute s...

看看這個SQL 儲存過程 錯在哪裡?

set countrows select count 1 from 選書單檢視 where 單位編號 companynumber and 是否提交 0 and 是否審核 1 記得加上小括號。set summoney select sum 小計 from選書單檢視 where 單位編號 company...