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

पीडीओ वर्ग का विस्तार

$dsn डेटा स्रोत का नाम है। यह आपके लिए आपके होस्टनाम को संभालता है। आप इसे इस तरह इस्तेमाल करते हैं:

$dsn = 'mysql:dbname=YOUR_DB_NAME;host=YOUR_HOSTNAME'

लाइन के साथ $this->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); जब त्रुटियां होती हैं (जो मुझे पसंद हैं) तो आपने अपवादों को उठाने के लिए सेट किया है, इसलिए आपकी विस्तारित कक्षा में आप अपवाद हैंडलर में त्रुटियों को संभाल सकते हैं। यदि आपके पास विस्तारित पीडीओ वर्ग में getAssoc नामक एक विधि थी तो यह इस तरह दिखाई देगी:

/// Get an associative array of results for the sql.
public function getAssoc($sql, $params=array())
{
   try
   {
      $stmt = $this->prepare($sql);
      $params = is_array($params) ? $params : array($params);
      $stmt->execute($params);

      return $stmt->fetchAll(PDO::FETCH_ASSOC);
   }
   catch (Exception $e)
   {
      // Echo the error or Re-throw it to catch it higher up where you have more
      // information on where it occurred in your program.
      // e.g echo 'Error: ' . $e->getMessage(); 

      throw new Exception(
            __METHOD__ . 'Exception Raised for sql: ' . var_export($sql, true) .
            ' Params: ' . var_export($params, true) .
            ' Error_Info: ' . var_export($this->errorInfo(), true),
            0,
            $e);
   }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MYSQL या बनाम IN प्रदर्शन

  2. प्रति श्रेणी वस्तुओं की गणना कैसे करें?

  3. रेल यादृच्छिक रिकॉर्ड का चयन करें

  4. PHP के साथ html को pdf में कैसे बदलें?

  5. क्या MySQL में UNIX_TIMESTAMP डिफ़ॉल्ट के साथ एक कॉलम बनाना संभव है?