当前位置: 首页>>代码示例>>PHP>>正文


PHP Connection::getConfiguration方法代码示例

本文整理汇总了PHP中OC\DB\Connection::getConfiguration方法的典型用法代码示例。如果您正苦于以下问题:PHP Connection::getConfiguration方法的具体用法?PHP Connection::getConfiguration怎么用?PHP Connection::getConfiguration使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在OC\DB\Connection的用法示例。


在下文中一共展示了Connection::getConfiguration方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: saveSchemaToFile

 /**
  * @param string $file
  * @param \OC\DB\Connection $conn
  * @return bool
  */
 public static function saveSchemaToFile($file, \OC\DB\Connection $conn)
 {
     $config = \OC::$server->getConfig();
     $xml = new SimpleXMLElement('<database/>');
     $xml->addChild('name', $config->getSystemValue('dbname', 'owncloud'));
     $xml->addChild('create', 'true');
     $xml->addChild('overwrite', 'false');
     $xml->addChild('charset', 'utf8');
     $conn->getConfiguration()->setFilterSchemaAssetsExpression('/^' . $config->getSystemValue('dbtableprefix', 'oc_') . '/');
     foreach ($conn->getSchemaManager()->listTables() as $table) {
         self::saveTable($table, $xml->addChild('table'));
     }
     file_put_contents($file, $xml->asXML());
     return true;
 }
开发者ID:riso,项目名称:owncloud-core,代码行数:20,代码来源:mdb2schemawriter.php

示例2: resynchronizeDatabaseSequences

    /**
     * @brief Resynchronizes all sequences of a database after using INSERTs
     *        without leaving out the auto-incremented column.
     * @param \OC\DB\Connection $conn
     * @return null
     */
    public function resynchronizeDatabaseSequences(Connection $conn)
    {
        $databaseName = $conn->getDatabase();
        $conn->getConfiguration()->setFilterSchemaAssetsExpression('/^' . $this->config->getSystemValue('dbtableprefix', 'oc_') . '/');
        foreach ($conn->getSchemaManager()->listSequences() as $sequence) {
            $sequenceName = $sequence->getName();
            $sqlInfo = 'SELECT table_schema, table_name, column_name
				FROM information_schema.columns
				WHERE column_default = ? AND table_catalog = ?';
            $sequenceInfo = $conn->fetchAssoc($sqlInfo, array("nextval('{$sequenceName}'::regclass)", $databaseName));
            $tableName = $sequenceInfo['table_name'];
            $columnName = $sequenceInfo['column_name'];
            $sqlMaxId = "SELECT MAX({$columnName}) FROM {$tableName}";
            $sqlSetval = "SELECT setval('{$sequenceName}', ({$sqlMaxId}))";
            $conn->executeQuery($sqlSetval);
        }
    }
开发者ID:riso,项目名称:owncloud-core,代码行数:23,代码来源:pgsqltools.php

示例3: saveSchemaToFile

 /**
  * @param string $file
  * @param \OC\DB\Connection $conn
  * @return bool
  */
 public static function saveSchemaToFile($file, \OC\DB\Connection $conn)
 {
     $config = \OC::$server->getConfig();
     $xml = new SimpleXMLElement('<database/>');
     $xml->addChild('name', $config->getSystemValue('dbname', 'owncloud'));
     $xml->addChild('create', 'true');
     $xml->addChild('overwrite', 'false');
     $xml->addChild('charset', 'utf8');
     // FIX ME: bloody work around
     if ($config->getSystemValue('dbtype', 'sqlite') === 'oci') {
         $filterExpression = '/^"' . preg_quote($conn->getPrefix()) . '/';
     } else {
         $filterExpression = '/^' . preg_quote($conn->getPrefix()) . '/';
     }
     $conn->getConfiguration()->setFilterSchemaAssetsExpression($filterExpression);
     foreach ($conn->getSchemaManager()->listTables() as $table) {
         self::saveTable($table, $xml->addChild('table'));
     }
     file_put_contents($file, $xml->asXML());
     return true;
 }
开发者ID:evanjt,项目名称:core,代码行数:26,代码来源:mdb2schemawriter.php

示例4: getTables

 protected function getTables(Connection $db)
 {
     $db->getConfiguration()->setFilterSchemaAssetsExpression('/^' . $this->config->getSystemValue('dbtableprefix', 'oc_') . '/');
     return $db->getSchemaManager()->listTableNames();
 }
开发者ID:riso,项目名称:owncloud-core,代码行数:5,代码来源:converttype.php


注:本文中的OC\DB\Connection::getConfiguration方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。