五险合一信息管理系统出现 数据库错误代码 -3怎么解决?

五险合一信息管理系统出现 数据库错误代码 -3怎么解决?,第1张

一般来说覆盖没有问题,出现这个现象的原因是,医疗和四险是两个系统,两个系统都要带着单位信息下卸(组织机构代码和社保登记证号是判断是否同一单位的标志),这样才能关联到同一个单位下。如果你在医疗和四险中单位信息 其他 项目有不一的,公共信息保留医疗的。

return 3 表示 “借书失败”。 借阅号是每次取最大值,然后加1,这个字段应该是唯一的,大概是主键或唯一键。当多人同时 *** 作时,可能发生并发错误,并返回3。

USE 图书借阅管理

GO

CREATE PROC 借书过程

@借书证号 char(5),@图书名称 varchar(40),@作者 varchar(20)

AS

DECLARE @借阅号 int,@图书编号 varchar(6)

IF EXISTS (SELECT * FROM 图书信息

WHERE 图书名称=@图书名称 and 作者=@作者 and 状态=0)

BEGIN

BEGIN TRANSACTION

SELECT @图书编号=图书编号 FROM 图书信息

WHERE 图书名称=@图书名称 and 作者=@作者 and 状态=0

UPDATE 图书信息

SET 状态=1

WHERE 图书编号=@图书编号

IF @@error!=0

BEGIN

ROLLBACK TRANSACTION

PRINT '更新图书信息表失败。'

RETURN 1

END

SELECT @借阅号=借阅号

FROM 租借信息 ORDER BY 借阅号

IF @借阅号 is null

SET @借阅号=0

INSERT 租借信息(借阅号,借书证号,图书编号,借书日期) VALUES (@借阅号+1,@借书证号,@图书编号,getdate())

IF @@error!=0 ----------------

BEGIN --------------

ROLLBACK TRANSACTION -------------

PRINT '借书失败。' ------------------ 3

RETURN 3----------------------

END ----------------------------------

UPDATE 学生信息

SET 借书册数=借书册数+1

WHERE 借书证号=@借书证号

IF @@error!=0

BEGIN

ROLLBACK TRANSACTION

PRINT '更新学生信息失败。'

RETURN 4

END

COMMIT TRANSACTION

PRINT '恭喜您借书成功!图书编号是:'+@图书编号

RETURN 0

END

ELSE

BEGIN

PRINT '图书已经借出或没有。'

RETURN 2

END


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9524774.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存