เรามีตารางบันทึกที่มีคอลัมน์ข้อความที่บางครั้งมีการติดตามกองซ้อนข้อยกเว้น ฉันมีเกณฑ์บางอย่างที่กำหนดว่าข้อความมีสิ่งนี้หรือไม่ เราไม่ต้องการแสดงข้อความเหล่านี้ให้กับลูกค้า แต่มีข้อความเช่น:
เกิดข้อผิดพลาดภายใน ติดต่อเราด้วยรหัสอ้างอิง xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
โดยที่ xxx etc เป็นคอลัมน์ guid ในตาราง ฉันกำลังเขียน proc ที่จัดเก็บไว้ดังนี้:
declare @exceptionCriteria nvarchar(50)
select @exceptionCriteria = '%<enter criteria etc>%'
select LogDate,
case
when Message like @exceptionCriteria
then 'Internal Error Occured. Reference Code: ' + str(RequestID)
else Message
end
from UpdateQueue
RequestID
เป็น Guid datatype ใน SQL Server และไม่ได้แปลงเป็นสตริงที่นี่ ฉันเคยเห็นรหัสบางอย่างเกี่ยวกับวิธีการแปลง Guid เป็นสตริง แต่เป็นแบบหลายเส้นและฉันไม่คิดว่ามันจะใช้งานได้ในกรณีคำสั่ง ความคิดใด ๆ ?