2011-10-24 15 views
9

SQLEXCEPTION होने पर मुझे MySQL संग्रहीत प्रक्रिया में त्रुटि टेक्स्ट कैसे प्राप्त हो सकता है?MySQL प्रक्रियाओं में SQLEXCEPTION संदेश प्राप्त करना

DECLARE EXIT HANDLER FOR SQLEXCEPTION  
BEGIN 
    INSERT INTO my_log (error_message) 
    VALUES (SQLEXCEPTION.message); 
END; 
+0

MySql का कौन सा संस्करण उपयोग कर रहे हैं:

मैं कुछ इस तरह की जरूरत है? – Nodlehs

+0

5.1.49 मैंने पाया कि बहुत पहले नहीं जोड़ा गया था नई सुविधा को डायग्नोस्टिक प्राप्त करें, जो मेरी समस्या हल करती है। – shurik2533

+0

लेकिन यह 5.6.4 में जोड़ा गया है ... वैसे भी उत्तर के लिए धन्यवाद! – miherrma

उत्तर

4
DECLARE EXIT HANDLER FOR SQLEXCEPTION  
BEGIN 

GET DIAGNOSTICS CONDITION 1 
    @p2 = MESSAGE_TEXT; 

    INSERT INTO my_log (error_message) 
    SELECT @p2; 
END; 
+3

https://dev.mysql.com/doc/refman/5.7/en/get-diagnostics.html –

संबंधित मुद्दे