SQl 存储过程完成记录的上下移动操作

原创 2012年03月27日 22:30:13

/****** Object:  StoredProcedure [dbo].[sortGroup]    Script Date: 03/27/2012 16:28:35 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create proc [dbo].[sortGroup]
@groupid int,
@up bit,
@createuser int
as
declare @dqsort int
declare @shyi int

declare @syid int
declare @xyid int

select @dqsort=Sort from T_Group where Group_Id=@groupid and create_user=@createuser                       --取出其序号

if @up = 1
begin
 select top 1 @syid=Group_Id,@shyi=Sort from T_Group where Sort<@dqsort and create_user=@createuser order by Sort desc   --取出其上一条Id来
end
else
begin
    select top 1 @syid=Group_Id,@shyi=Sort from T_Group where Sort > @dqsort and create_user=@createuser order by Sort asc
end
begin tran
update T_Group set sort=@dqsort where Group_Id=@syid             --把上一条的sort高为当前的条的Sort
update T_Group set Sort=@shyi where Group_id = @groupid
if @@ERROR = 0
COMMIT TRAN
ELSE
ROLLBACK TRAN
GO
/****** Object:  ForeignKey [FK__City__proID__398D8EEE]    Script Date: 03/27/2012 16:28:37 ******/
ALTER TABLE [dbo].[T_City]  WITH CHECK ADD FOREIGN KEY([proID])
REFERENCES [dbo].[T_Province] ([proID])
GO

SQL存储过程和我们的试图 的操作

--  billHead 表单的头部的部分效果--    [billId] [int] IDENTITY(1,1) NOT NULL, [billCode] [char](10) NOT NULL...

SQL SERVER 存储过程的操作与管理

  • 2011年10月17日 19:18
  • 128KB
  • 下载

Oracle数据库操作大全(十三)——pl/sql编程(存储过程、函数、触发器)

1.存储过程、函数、触发器局

sql语句实现数据库的操作(包括角色、权限、用户、存储过程)

登陆管理:sp_addlogin 新增帐号 sp_droplogin 删除帐号 sp_grantlogins 允许某windows帐号访问 sp_denylogins 禁止某windows帐号访...

SQL server触发器、存储过程操作远程数据库插入数据,解决服务器已存在的问题

最近弄了一个小项目,也不是很复杂,需要将一个数据库的一些数据备份到另外一个库,不是本地,可能是网络上其他的数据库,想了一下,用了存储过程和触发器。也不是很复杂,首先我需要操作远程数据库,于是写了一个存...
  • ysblue
  • ysblue
  • 2015年07月24日 15:57
  • 1224

oracle(pl/sql)包、存储过程的增、删、查、改等操作的实现(源代码)

--创建存储过程 create or replace package pkg_rights is        -- Author : Keleesy        -- Created : 2...

Oracle数据库操作大全(十四)pl/sql编程之存储过程

存储过程:
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQl 存储过程完成记录的上下移动操作
举报原因:
原因补充:

(最多只允许输入30个字)