Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

एएसपी क्लासिक ऑरैकल लिंक्ड सर्वर से कनेक्ट करते समय त्रुटियों को कैसे ट्रैप करें

मैं इस कोड का उपयोग करता हूं...

'GetDataSet error columns...
const C_ERROR               = "ERROR"               'Used when an error is generated - to be fed to the comsuming routine
const C_NO_DATA             = "NO_DATA"             'Used when no data is returned to a consuming routine
const C_COL_IDENTIFIER      = 0
const C_COL_ERROR_ID        = 1
const C_COL_ERROR_MESSAGE   = 2
const C_COL_SQL             = 3
const C_COL_CONNECTION      = 4

'GetDataSet
'   Returns a table of data based on the supplied SQL statement and connection string.
'Parameters:
'   sqlString (string) - The SQL string to be sent.
'   connString (string) - The database connection string.
'Usage:
'   dataSet = GetDataSet(sqlString, connString)
'Description:
'   This function generates a table of information in a 2 dimensional array.  The first dimension represents the columns
'   and the second the rows.  If an error occurs while the routine is executing the array and the base index (0,0) is set 
'   to C_ERROR, (0,1) to the VBScript error index, and (0,2) to the VBScript error description.
function GetDataSet(sqlString, connString)
    'Initialise...
    dim returnVal, rsData
    on error resume next
        'Define and open the recordset object...
        set rsData = Server.CreateObject("ADODB.RecordSet")
        rsData.Open sqlString, connString, 0, 1, 1
        'Initialise an empty value for the containing array...
        redim returnVal(0,0)
        returnVal(0,0) = C_NO_DATA
        'Deal with any errors...
        if not rsData.EOF and not rsData.BOF then
            'Store the data...
            returnVal = rsData.GetRows()
            select case err.number
                case 3021   'No data returned
                    'Do nothing as the initial value will still exist (C_NO_DATA)
                case 0      'No error
                    'Do nothing as data has been returned
                case else
                    redim returnVal(4,0)
                    returnVal(C_COL_IDENTIFIER,0) = C_ERROR
                    returnVal(C_COL_ERROR_ID,0) = err.number
                    returnVal(C_COL_ERROR_MESSAGE,0) = err.description
                    returnVal(C_COL_SQL,0) = sqlString
                    returnVal(C_COL_CONNECTION,0) = connString
            end select
        end if
        'Tidy up...
        rsData.close
        set rsData = nothing
    on error goto 0
    'Return the array...
    GetDataSet = returnVal
end function

मेरे डेटा सेट प्राप्त करने के लिए। यह एक सरणी देता है जिसे आप अपनी पसंद के अनुसार संभाल सकते हैं (ermm ... महिला-संभाल?)

यदि कोई त्रुटि है तो विवरण सरणी के उपयुक्त तत्वों में वापस कर दिए जाते हैं।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. स्पूल कमांड:फाइल करने के लिए SQL स्टेटमेंट आउटपुट न करें

  2. स्प्रिंग डेटा जेपीए के साथ संग्रहित प्रक्रिया को कॉल करते समय सरणी में कैसे पास करें?

  3. Oracle फ़ेविकॉन को हटाने की आवश्यकता है

  4. Oracle:दो तिथियों को कैसे घटाएं और परिणाम के मिनट प्राप्त करें

  5. NLS_CHARSET_ID () Oracle में फ़ंक्शन