เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

CATCH ข้อผิดพลาด

รัน dbo.cuspRideSummaryDelete โดยส่งค่า @DateParm ที่ไม่ถูกต้องเป็น '1/32/2018' เพื่อดูว่าระบบจัดการข้อผิดพลาดอย่างไร วันที่ที่ไม่ถูกต้องนี้จะถูกรับไว้ได้โดยชนิดข้อมูล nvarchar ของ @DateParm แต่ข้อผิดพลาดจะเกิดขึ้นเมื่อ SQL พยายามแปลงค่าดังกล่าวให้เป็นวันที่ที่ถูกต้องระหว่างการรัน stored procedure

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การเขียนฟังก์ชันและ Stored Procedures ใน SQL Server

ดูคอร์ส

คำแนะนำการฝึกหัด

  • DECLARE ตัวแปร @ReturnCode เป็นชนิด integer และ @ErrorOut เป็นชนิด nvarchar(max)
  • รัน dbo.cuspRideSummaryDelete และส่ง '1/32/2018' เป็นค่าของ @DateParm
  • กำหนดค่า @ErrorOut ให้กับพารามิเตอร์ @Error
  • SELECT ทั้ง @ReturnCode และ @ErrorOut เพื่อดูค่าของแต่ละตัว

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

-- Create @ReturnCode
___ ___ ___
-- Create @ErrorOut
___ ___ ___(___)
-- Execute the SP, storing the result in @ReturnCode
___ ___ = ___.___
    -- Specify @DateParm
	___ = '1/32/2018',
    -- Assign @ErrorOut to @Error
	___ = ___ OUTPUT
-- Select @ReturnCode and @ErrorOut
___
	___ AS ReturnCode,
    ___ AS ErrorMessage;
แก้ไขและรันโค้ด