![SqlServer[存储过程]练习,第1张 SqlServer[存储过程]练习,第1张](/aiimages/SqlServer%5B%E5%AD%98%E5%82%A8%E8%BF%87%E7%A8%8B%5D%E7%BB%83%E4%B9%A0.png)
--创建一个向特定表中插入记录的存储方式
create proc usp_T_Users_Insert
@username varchar(50),@password varchar(50),@email varchar(50)
as
begin
insert into T_Users values (@username,@password,@email)
end
--2使用ADO验证登陆。
create table T_User (Fusername nvarchar(50),Fpassword varchar(50))
insert into T_User values('admin','123')
insert into T_User values('YQQ','123')
create proc usp_School_denglu
@usename varchar(50),@result bit output
as
begin
declare @count int
set @count=(select COUNT(*) from T_User where Fusername=@usename and Fpassword=@password)
if @count>0
begin
set @result=1
end
else
begin
set @result=0
end
end
declare @r bit
exec usp_School_denglu 'admin','888888',@r output
print @r
--2.1使用ADO重写登陆验证存储过程。
create proc usp_chkLogin2
@username varchar(50),
@pwd varchar(50)
as
begin
select COUNT(*) from T_User where Fusemame=@username and Fpassword=@pwd
end
exec usp_chkLogin2 'YQQ43','123'
--删除特定表中的某条记录
create proc usp_Student_Delete
@tTID int
as
begin
delete from myteacher where tTID=@tTID
end
--修改特定表中的某条记录(更新)
create proc usp_ClassBak_update
@CID int,
@Cname varchar(50)
as
begin
update ClassBak set cname=@Cname where clsID=@CID
end
drop proc uso_class_selectAll
--查询所有记录的存储过程
create proc uso_class_selectAll
as
begin
select * from ClassBak
end
exec uso_class_selectAll
--3 写一个对特定表进行分页显示的存储过程,要求有两个参数一个是 每页显示的记录的条数(@pagesize),第二个是显示第几页(@pageIndex)
create proc usp_MyStudent_GetDateByPageIndex
@pagesize int=10,
@pageIndex int
as
begin
select * from
(select *,ROW_NUMBER() over(order by FID) as rowIndex from MyStudents) as tb1
where tbl.rowIndex between(@pagesize*(@pageIndex-1)+1) and @pagesize*@pageIndex
end
--查询表中所有字段 create proc Pro_GetNews as select * from T_News go create proc Pro_GetNewsTitle @newsTitle varchar(64) AS SELECT NewsTitle,substring(NewsContent,1,20)+'...' as NewsContent,CreateTime from T_News where NewsTitle like '%@newsTitle%' GO CREATE proc Pro_GetMaxID @maxID int out as insert into T_News(NewsTitle,NewsContent,NewsCreator,CreateTime,ClassID) values ('本周全国大部分地区降温','本周全国大部分地区降温,最高温度达10度','003',GETDATE(),'39ec3206-4467-44b4-8fa1-711443eb4ce5') set @maxID=@@IDENTITY; GO DECLARE @maxID int; EXEC Pro_GetMaxID @maxID out; print @maxID --接受用户输入的参数,插入数据,返回最大编号。 CREATE PROC Pro_GetMaxID1 @newsTitle varchar(64),@newscontent varchar(max),@newscreator varchar(8),@createtime DATETIME,@classname varchar(30),@maxID int out as DECLARE @classID uniqueIDentifIEr; select @classID=T1.ClassID from T_NewsClass as T1 WHERE T1.Classname=@classname; insert into T_News(NewsTitle,ClassID) values (@newsTitle,@newscontent,@newscreator,@classID) set @maxID=@@IDENTITY; GO --执行存储过程: declare @maxID int; exec Pro_GetMaxID1 '111','222','2012-03-11','娱乐',@maxID out; PRINT @maxID GO
总结以上是内存溢出为你收集整理的SqlServer[存储过程]练习全部内容,希望文章能够帮你解决SqlServer[存储过程]练习所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)