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

पीडीओ - तालिका उपसर्गों के साथ कार्य करना

पीडीओ वर्ग का विस्तार करना शायद सबसे अच्छा विकल्प है।

class MyPDO extends PDO
{
    protected $_table_prefix;
    protected $_table_suffix;

    public function __construct($dsn, $user = null, $password = null, $driver_options = array(), $prefix = null, $suffix = null)
    {
        $this->_table_prefix = $prefix;
        $this->_table_suffix = $suffix;
        parent::__construct($dsn, $user, $password, $driver_options);
    }

    public function exec($statement)
    {
        $statement = $this->_tablePrefixSuffix($statement);
        return parent::exec($statement);
    }

    public function prepare($statement, $driver_options = array())
    {
        $statement = $this->_tablePrefixSuffix($statement);
        return parent::prepare($statement, $driver_options);
    }

    public function query($statement)
    {
        $statement = $this->_tablePrefixSuffix($statement);
        $args      = func_get_args();

        if (count($args) > 1) {
            return call_user_func_array(array($this, 'parent::query'), $args);
        } else {
            return parent::query($statement);
        }
    }

    protected function _tablePrefixSuffix($statement)
    {
        return sprintf($statement, $this->_table_prefix, $this->_table_suffix);
    }
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या प्राथमिक कुंजी पर बनाने और अनुक्रमित करने का कोई लाभ है?

  2. MyISAM इंजन तालिका संबंध (MySQL)

  3. सरणी इनपुट मान mysql में खाली रिकॉर्ड सम्मिलित करता है

  4. रेल-MySQL त्रुटि - अप्रारंभीकृत निरंतर MysqlCompat::MysqlRes

  5. MySQL लोड XML INFILE के साथ समस्या