错误信息提示:
错误号:12142

错误原因:

错误SQL语句:
select * from user_skin where  find_in_set('sysai.net',replace(host,'|',','))

Warning: fopen(/error/2025-06-27.txt): failed to open stream: No such file or directory in /opt/lampp/htdocs/sysai/inc/datai.php on line 247
文件 2025-06-27.txt 不可写

sysai
『 자료실 』
현재위치 : HOME > 자료실
存储过程中的错误处理
글쓴이 : manager 작성일 : 2012-09-13
如果存储过程执行中遇到了错误(严重错误),就会终止sp的执行,但是如果想让sp跳过错误,继续执行后面的语句,怎么办?
1,在sql server 2005中可以用try...catch解决。
  1. CREATE TABLE testTable
  2. (
  3. id int IDENTITY(1,1),
  4. name nvarchar(20) NOT NULL,
  5. pass nvarchar(20)
  6. )
  7. CREATE PROCEDURE testTableInsert
  8. @name nvarchar(20),
  9. @pass nvarchar(20)
  10. AS
  11. BEGIN TRY
  12. INSERT INTO testTable
  13. VALUES(@name,@pass)
  14. END TRY
  15. BEGIN CATCH
  16. PRINT @@error
  17. PRINT 'error'
  18. END CATCH
  19. SELECT * FROM Test--(怎是存在的表)
  20. EXEC testTableInsert null,'test'
2,sql server 2005之前,用sp嵌套的方法(来自zjcxc(邹建))
  1. --下面演示了SQL错误处理的脆弱性
  2. --测试的存储过程1
  3. create proc p1
  4. as
  5. print 12/0
  6. if @@error<>0
  7. print 'error 1'
  8. select * FROM SwcPage
  9. if @@error<>0
  10. print 'error 2'
  11. go
  12. --调用
  13. exec p1
  14. go
  15. --删除测试
  16. drop proc p1
  17. /*--测试结果
  18. 服务器: 消息 8134,级别 16,状态 1,过程 p1,行 6
  19. 遇到被零除错误。
  20. 发生错误1
  21. 服务器: 消息 208,级别 16,状态 1,过程 p1,行 10
  22. 对象名 'newid' 无效。
  23. --*/
  1. --下面演示了SQL错误处理的脆弱性
  2. --演示2,存储过程嵌套调用中的错误
  3. --测试的存储过程1
  4. create proc p1
  5. as
  6. print 12/0
  7. if @@error<>0
  8. print 'error 1'
  9. select * from newid()
  10. if @@error<>0
  11. print 'error 2'
  12. go
  13. --测试的存储过程2
  14. create proc p2
  15. as
  16. exec p1
  17. if @@error<>0
  18. print 'call sp1 error end'
  19. else
  20. print 'call sp1 normal end'
  21. go
  22. --调用
  23. exec p2
  24. go
  25. --删除测试
  26. drop proc p1,p2
  27. /*--测试结果
  28. 服务器: 消息 8134,级别 16,状态 1,过程 p1,行 8
  29. 遇到被零除错误。
  30. 发生错误1
  31. 服务器: 消息 208,级别 16,状态 1,过程 p1,行 12
  32. 对象名 'newid' 无效。
  33. 调用 存储过程1 异常结束
  34. --*/
목록


홈으로 | 이용안내 | 이용약관 | 개인정보보호정책 | 제휴문의 | 질문과답변 | 자주하는 질문
Copyright © 2011 - 2014 SYSAI Work Group, All Rights Reserved 주소:길림성연길시,우편:133300 Version 3.0 Run Time 0.208s