sql server儲存過程

2021-06-06 22:51:17 字數 3649 閱讀 9409

建立表的語句:

create table student

(sno int primary key,

sname nvarchar(30),

sgentle nvarchar(2),

sage int,

sbirth smalldatetime,

sdept nvarchar(30)

)--drop table student;

create table sc

(sno int foreign key references student(sno),

cno int,

grade int

)--drop table sc;

create table course

(cno int,

cname nvarchar(50),

cgrade int,

--constraint pk_cno foreign key(cno) references sc(cno)

)--drop table course;

插入資料:

select * from student;

insert into student(sno,sname,sgentle,sage,sbirth,sdept) values(990001, '張三', '男', 20,

'1987-8-4', '計算機');

insert into student(sno,sname,sgentle,sage,sbirth,sdept) values(990002, '陳林', '女', 19,

'1988-5-21', '外語');

insert into student(sno,sname,sgentle,sage,sbirth,sdept) values(990003, '吳中', '男', 21,

'1986-4-12', '工商管理');

insert into student(sno,sname,sgentle,sage,sbirth,sdept) values(990005, '王冰', '女', 20,

'1987-2-16', '藝術');

insert into student(sno,sname,sgentle,sage,sbirth,sdept) values(990012, '張中和', '男', 22,

'1985-8-28', '藝術');

insert into student(sno,sname,sgentle,sage,sbirth,sdept) values(990026, '陳維佳', '男', 21,

'1986-7-1', '計算機');

insert into student(sno,sname,sgentle,sage,sbirth,sdept) values(990028, '麗莎', '女', 21,

'1986-10-21', '計算機');

insert into sc(sno,cno,grade) values(990001,003,85);

insert into sc(sno,cno,grade) values(990001,004,78);

insert into sc(sno,cno,grade) values(990003,001,95);

insert into sc(sno,cno,grade) values(990012,004,62);

insert into sc(sno,cno,grade) values(990012,006,74);

insert into sc(sno,cno,grade) values(990012,007,81);

insert into sc(sno,cno) values(990026,001);

insert into sc(sno,cno,grade) values(990026,003,77);

insert into sc(sno,cno) values(990028,006);

insert into course(cno,cname,cgrade) values(001,'計算機基礎',2);

insert into course(cno,cname,cgrade) values(003,'資料結構',4);

insert into course(cno,cname,cgrade) values(004,'作業系統',4);

insert into course(cno,cname,cgrade) values(006,'資料庫原理',4);

insert into course(cno,cname,cgrade) values(007,'軟體工程',4);

select * from course;

select * from sc;

儲存過程的語句:

--建立儲存過程

create procedure stu_all

asselect * from student;

exec stu_all;--執行儲存過程

exec sp_helptext stu_all;--呼叫系統儲存過程

--查詢選修了資料結構的學生的資訊

create procedure stu_ds

asselect * from student where sno in

( select sno from sc where cno =

(select cno from course where cname = '資料結構'

) )exec stu_ds;

--帶引數的儲存過程

--建立乙個儲存過程stu_sno,根據使用者執行的學號查詢學生資訊

create procedure stu_sno

@sno varchar(10)

asselect * from student where sno = @sno;

exec stu_sno '990001';--帶參儲存過程的使用

--帶兩個引數的儲存過程

create procedure stu_grade

@sdept varchar(50),

@cname varchar(10)

asselect student.sno 學號,student.sname 姓名,student.sgentle 性別,course.cname 課程名, course.cgrade 學分, sc.grade 成績

from student

join sc

on student.sno = sc.sno

join course

on course.cno = sc.cno

where student.sdept = @sdept and course.cname = @cname

drop procedure stu_grade;

exec stu_grade '計算機','資料結構';

--帶萬用字元的儲存過程

create procedure stu_sname

@sname varchar(10)

asselect * from student where sname like @sname

exec stu_sname '張%';

SQLSERVER儲存過程

sqlserver儲存過程使用說明書 引言首先介紹一下什麼是儲存過程 儲存過程就是將常用的或很複雜的工作,預先用 sql語句寫好並用乙個指定的名稱儲存起來,並且這樣的語句是放在資料庫中的,還可以根據條件執行不同 sql語句,那麼以後要叫資料庫提供與已定義好的儲存過程的功能相同的服務時,只需呼叫 ex...

SQL Server 儲存過程

儲存過程概念 儲存過程優點 儲存過程的介面 儲存過程的解析 編譯過程 儲存過程安全性 檢視儲存過程 加密 解密儲存過程 儲存過程概念 儲存過程 stored procedure 是一組為了完成特定功能的sql語句集,經編譯後儲存在資料庫中。使用者通過指定儲存過程的名字並給出引數 帶參儲存過程 來執行...

sql Server儲存過程

今天是執行計畫的第一天,沒日學習一點新東西,記錄下自己的心得體會。1.sql server資料庫連線語句 一般會有下面的四種情況 a.一般的遠端訪問的寫成這樣 data source ip initial catalog 資料庫名 userid 使用者名稱 password 密碼 b.本地訪問的寫成...