DECLARE @Error int,@CompanyId int--公司Id Company_Insert的返回值
BEGIN TRANSACTION
EXECUTE @CompanyId = DBO.Company_Insert @CompanyName,@ListCompanyLevelId
SET @Error = @@ERROR
IF @Error != 0 GOTO ERROR_HANDLER
INSERT INTO Employee
(
CompanyId,
)
VALUES
(
@CompanyId,
)
SET @Error = @@ERROR
IF @Error != 0 GOTO ERROR_HANDLER
COMMIT TRANSACTION
RETURN scope_identity()
ERROR_HANDLER:
IF @@TRANCOUNT != 0 ROLLBACK TRANSACTION
BEGIN TRANSACTION
EXECUTE @CompanyId = DBO.Company_Insert @CompanyName,@ListCompanyLevelId
SET @Error = @@ERROR
IF @Error != 0 GOTO ERROR_HANDLER
INSERT INTO Employee
(
CompanyId,
)
VALUES
(
@CompanyId,
)
SET @Error = @@ERROR
IF @Error != 0 GOTO ERROR_HANDLER
COMMIT TRANSACTION
RETURN scope_identity()
ERROR_HANDLER:
IF @@TRANCOUNT != 0 ROLLBACK TRANSACTION
解决方案 »
- 非常着急的问题~~~~关于sqlserver2000 启动就执行存储过程的问题!
- sqlserver2000 安装虚拟服务器的问题
- SQL Server下如何作到双机同步备份?
- Sql SERVER2000数据库,在企业管理器中建表不成功!!!
- 请赐教:双机热备份上的SQL虚拟服务器如何卸载,卸载后群集管理器会不会受到影响。
- 求助@@FETCH_STATUS值,会自动变回来吗
- 数据库有时会自动断开。
- SQLServer 通过端口1433连接到主机127.0.0.1的TCP/IP连接失败问题
- SQL Server 数据同步问题!巨牛请进
- 怎样显示数据库中的图片字段?
- 我是一个新手。。请问各位朋友。。高手。。。怎么才可以帮SQL学好。。谢谢
- 交叉表统计
如果IF @Error != 0且@@TRANCOUNT = 0会commit还是rollback?