/** * @param string $connectionName * * @throws Sabel_Exception_ClassNotFound * @return Sabel_Db_Abstract_Metadata */ public static function createMetadata($connectionName = "default") { $className = self::classPrefix($connectionName) . "Metadata"; $schemaName = Sabel_Db_Config::getSchemaName($connectionName); if (Sabel::using($className)) { return new $className(self::createDriver($connectionName), $schemaName); } elseif ($baseClass = self::getBaseClassName($connectionName, "Metadata")) { return new $baseClass(self::createDriver($connectionName), $schemaName); } else { $message = __METHOD__ . "() Class '{$className}' not Found."; throw new Sabel_Exception_ClassNotFound($message); } }
public function testSchemaNameOfCustomPackage() { $params = array("package" => "my.db.org", "database" => "mydb", "schema" => "hoge"); Sabel_Db_Config::add("configtest", $params); $this->assertEquals("hoge", Sabel_Db_Config::getSchemaName("configtest")); $params = array("package" => "my.db.org", "database" => "mydb"); Sabel_Db_Config::add("configtest", $params); try { Sabel_Db_Config::getSchemaName("configtest"); } catch (Sabel_Db_Exception $e) { return; } $this->fail(); }
protected function dropDefaultConstraint($tblName, $colName) { $connectionName = $this->getStatement()->getDriver()->getConnectionName(); $schemaName = Sabel_Db_Config::getSchemaName($connectionName); $cName = $this->getDefaultConstraintName($schemaName, $tblName, $colName); if ($cName === null) { return; } $quotedTblName = $this->quoteIdentifier($tblName); $this->executeQuery("ALTER TABLE {$quotedTblName} DROP CONSTRAINT {$cName}"); }