getConnection() публичный Метод

Returns a PDO Connection
public getConnection ( ) : PDO
Результат PDO
Пример #1
0
 public function execute(\PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection, \PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet)
 {
     $connection->getConnection()->query("SET @PHAKE_PREV_foreign_key_checks = @@FOREIGN_KEY_CHECKS");
     $connection->getConnection()->query("SET FOREIGN_KEY_CHECKS = 0");
     parent::execute($connection, $dataSet);
     $connection->getConnection()->query("SET FOREIGN_KEY_CHECKS = @PHAKE_PREV_foreign_key_checks");
 }
Пример #2
0
 public function execute(PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection, PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet)
 {
     $connection->getConnection()->query("SET @PHAKE_PREV_foreign_key_checks = @@foreign_key_checks");
     $connection->getConnection()->query("SET foreign_key_checks = 0");
     parent::execute($connection, $dataSet);
     $connection->getConnection()->query("SET foreign_key_checks = @PHAKE_PREV_foreign_key_checks");
 }
Пример #3
0
 public function execute(\PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection, \PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet)
 {
     foreach ($dataSet->getTableNames() as $tableName) {
         $connection->getConnection()->query("Alter Table {$tableName} NOCHECK Constraint All");
     }
     foreach ($dataSet->getTableNames() as $tableName) {
         $connection->getConnection()->query("Delete From {$tableName}");
     }
     foreach ($dataSet->getTableNames() as $tableName) {
         $connection->getConnection()->query("DBCC CHECKIDENT ({$tableName}, RESEED, 0)");
     }
     foreach ($dataSet->getTableNames() as $tableName) {
         $connection->getConnection()->query("Alter Table {$tableName} CHECK Constraint All");
     }
 }
Пример #4
0
 public function execute(\PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection, \PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet)
 {
     /* @var $connection DoctrineExtensions\PHPUnit\TestConnection */
     $conn = $connection->getConnection();
     foreach ($dataSet->getReverseIterator() as $table) {
         /* @var $table PHPUnit_Extensions_Database_DataSet_ITable */
         $tableName = $connection->quoteSchemaObject($table->getTableMetaData()->getTableName());
         $query = $conn->getDatabasePlatform()->getTruncateTableSql($tableName, $this->useCascade);
         try {
             $connection->getConnection()->executeUpdate($query);
         } catch (\Exception $e) {
             throw new \PHPUnit_Extensions_Database_Operation_Exception('TRUNCATE', $query, array(), $table, $e->getMessage());
         }
     }
 }
Пример #5
0
 protected function loadData()
 {
     if ($this->data === NULL) {
         $pdoStatement = $this->databaseConnection->getConnection()->query($this->query);
         $this->data = $pdoStatement->fetchAll(PDO::FETCH_ASSOC);
     }
 }
Пример #6
0
 /**
  * Creates a new database table object.
  *
  * @param PHPUnit_Extensions_Database_DataSet_ITableMetaData $tableMetaData
  * @param PHPUnit_Extensions_Database_DB_IDatabaseConnection $databaseConnection
  */
 public function __construct(PHPUnit_Extensions_Database_DataSet_ITableMetaData $tableMetaData, PHPUnit_Extensions_Database_DB_IDatabaseConnection $databaseConnection)
 {
     $this->setTableMetaData($tableMetaData);
     $pdoStatement = $databaseConnection->getConnection()->prepare(PHPUnit_Extensions_Database_DB_DataSet::buildTableSelect($tableMetaData));
     $pdoStatement->execute();
     $this->data = $pdoStatement->fetchAll(PDO::FETCH_ASSOC);
 }
Пример #7
0
 public function execute(\PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection, \PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet)
 {
     foreach ($dataSet->getTableNames() as $tableName) {
         $connection->getConnection()->query("Alter Table {$tableName} NOCHECK Constraint All");
     }
     parent::execute($connection, $dataSet);
     foreach ($dataSet->getTableNames() as $tableName) {
         $connection->getConnection()->query("Alter Table {$tableName} CHECK Constraint All");
     }
 }
Пример #8
0
 public function execute(PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection, PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet)
 {
     foreach ($dataSet->getReverseIterator() as $table) {
         /* @var $table PHPUnit_Extensions_Database_DataSet_ITable */
         $query = "\n                DELETE FROM {$connection->quoteSchemaObject($table->getTableMetaData()->getTableName())}\n            ";
         try {
             $connection->getConnection()->query($query);
         } catch (PDOException $e) {
             throw new PHPUnit_Extensions_Database_Operation_Exception('DELETE_ALL', $query, array(), $table, $e->getMessage());
         }
     }
 }
Пример #9
0
 /**
  * Disable foreign key constraint checking prior to running the stock PHPUnit
  * truncate operation and then re-enable it.
  *
  * @param \PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection
  * @param \PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet
  * @return void
  */
 public function execute(\PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection, \PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet)
 {
     if (defined('WPINC')) {
         $connection->getConnection()->query("SET foreign_key_checks = 0");
     }
     foreach ($dataSet->getReverseIterator() as $table) {
         /* @var $table PHPUnit_Extensions_Database_DataSet_ITable */
         $query = "\n                {$connection->getTruncateCommand()}\n                {$connection->quoteSchemaObject($table->getTableMetaData()->getTableName())}\n            ";
         if (defined('WPINC')) {
             $query .= "";
         } else {
             $query .= " RESTART IDENTITY CASCADE";
         }
         try {
             $connection->getConnection()->query($query);
         } catch (PDOException $e) {
             throw new PHPUnit_Extensions_Database_Operation_Exception('TRUNCATE', $query, array(), $table, $e->getMessage());
         }
     }
     if (defined('WPINC')) {
         $connection->getConnection()->query("SET foreign_key_checks = 1");
     }
 }
Пример #10
0
 public function execute(PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection, PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet)
 {
     foreach ($dataSet->getReverseIterator() as $table) {
         /* @var $table PHPUnit_Extensions_Database_DataSet_ITable */
         $query = "\n                {$connection->getTruncateCommand()} {$connection->quoteSchemaObject($table->getTableMetaData()->getTableName())}\n            ";
         if ($this->useCascade && $connection->allowsCascading()) {
             $query .= " CASCADE";
         }
         try {
             $connection->getConnection()->query($query);
         } catch (PDOException $e) {
             throw new PHPUnit_Extensions_Database_Operation_Exception('TRUNCATE', $query, array(), $table, $e->getMessage());
         }
     }
 }
Пример #11
0
 /**
  * @param PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection
  * @param PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet
  */
 public function execute(PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection, PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet)
 {
     $databaseDataSet = $connection->createDataSet();
     foreach ($dataSet as $table) {
         /* @var $table PHPUnit_Extensions_Database_DataSet_ITable */
         $databaseTableMetaData = $databaseDataSet->getTableMetaData($table->getTableMetaData()->getTableName());
         $query = $this->buildOperationQuery($databaseTableMetaData, $table);
         $statement = $connection->getConnection()->prepare($query);
         for ($i = 0; $i < $table->getRowCount(); $i++) {
             $args = $this->buildOperationArguments($databaseTableMetaData, $table, $i);
             try {
                 $statement->execute($args);
             } catch (Exception $e) {
                 throw new PHPUnit_Extensions_Database_Operation_Exception($this->operationName, $query, $args, $table, $e->getMessage());
             }
         }
     }
 }
Пример #12
0
 protected function createTableMetaData()
 {
     if ($this->tableMetaData === NULL) {
         $this->loadData();
         // if some rows are in the table
         $columns = array();
         if (isset($this->data[0])) {
             // get column names from data
             $columns = array_keys($this->data[0]);
         } else {
             // if no rows found, get column names from database
             $pdoStatement = $this->databaseConnection->getConnection()->prepare("SELECT column_name FROM information_schema.COLUMNS WHERE table_schema=:schema AND table_name=:table");
             $pdoStatement->execute(array("table" => $this->tableName, "schema" => $this->databaseConnection->getSchema()));
             $columns = $pdoStatement->fetchAll(PDO::FETCH_COLUMN, 0);
         }
         // create metadata
         $this->tableMetaData = new PHPUnit_Extensions_Database_DataSet_DefaultTableMetaData($this->tableName, $columns);
     }
 }
Пример #13
0
 private function isMysql(PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection)
 {
     return $connection->getConnection()->getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql';
 }
Пример #14
0
 /**
  * @param PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection
  * @param PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet
  */
 public function execute(PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection, PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet)
 {
     $insertOperation = new PHPUnit_Extensions_Database_Operation_Insert();
     $updateOperation = new PHPUnit_Extensions_Database_Operation_Update();
     $databaseDataSet = $connection->createDataSet();
     foreach ($dataSet as $table) {
         /* @var $table PHPUnit_Extensions_Database_DataSet_ITable */
         $databaseTableMetaData = $databaseDataSet->getTableMetaData($table->getTableMetaData()->getTableName());
         $insertQuery = $insertOperation->buildOperationQuery($databaseTableMetaData, $table);
         $updateQuery = $updateOperation->buildOperationQuery($databaseTableMetaData, $table);
         $selectQuery = $this->buildOperationQuery($databaseTableMetaData, $table);
         $insertStatement = $connection->getConnection()->prepare($insertQuery);
         $updateStatement = $connection->getConnection()->prepare($updateQuery);
         $selectStatement = $connection->getConnection()->prepare($selectQuery);
         for ($i = 0; $i < $table->getRowCount(); $i++) {
             $selectArgs = $this->buildOperationArguments($databaseTableMetaData, $table, $i);
             $query = $selectQuery;
             $args = $selectArgs;
             try {
                 $selectStatement->execute($selectArgs);
                 if ($selectStatement->fetchColumn(0) > 0) {
                     $updateArgs = $updateOperation->buildOperationArguments($databaseTableMetaData, $table, $i);
                     $query = $updateQuery;
                     $args = $updateArgs;
                     $updateStatement->execute($updateArgs);
                 } else {
                     $insertArgs = $insertOperation->buildOperationArguments($databaseTableMetaData, $table, $i);
                     $query = $insertQuery;
                     $args = $insertArgs;
                     $insertStatement->execute($insertArgs);
                 }
             } catch (Exception $e) {
                 throw new PHPUnit_Extensions_Database_Operation_Exception($this->operationName, $query, $args, $table, $e->getMessage());
             }
         }
     }
 }
Пример #15
0
 public function execute(PHPUnit_Extensions_Database_DB_IDatabaseConnection $connection, PHPUnit_Extensions_Database_DataSet_IDataSet $dataSet)
 {
     $connection->getConnection()->query('SET ' . $this->_elem . '=' . $this->_value);
 }