本文整理汇总了PHP中Propel::setDB方法的典型用法代码示例。如果您正苦于以下问题:PHP Propel::setDB方法的具体用法?PHP Propel::setDB怎么用?PHP Propel::setDB使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Propel
的用法示例。
在下文中一共展示了Propel::setDB方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: build
public function build($dsn = null, $user = null, $pass = null, $adapter = null)
{
if (null === $dsn) {
$dsn = 'sqlite::memory:';
}
if (null === $adapter) {
$adapter = new DBSQLite();
}
$con = new PropelPDO($dsn, $user, $pass);
$con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$this->buildSQL($con);
$this->buildClasses();
$name = $this->getDatabase()->getName();
if (!Propel::isInit()) {
Propel::setConfiguration(array());
}
Propel::setDB($name, $adapter);
Propel::setConnection($name, $con, Propel::CONNECTION_READ);
Propel::setConnection($name, $con, Propel::CONNECTION_WRITE);
return $con;
}
示例2: tearDown
protected function tearDown()
{
Propel::setDB(null, $this->savedAdapter);
parent::tearDown();
}
示例3: testOrderByIgnoreCase
public function testOrderByIgnoreCase()
{
$originalDB = Propel::getDB();
Propel::setDB(null, new DBMySQL());
$criteria = new Criteria();
$criteria->setIgnoreCase(true);
$criteria->addAscendingOrderByColumn(BookPeer::TITLE);
BookPeer::addSelectColumns($criteria);
$params = array();
$sql = BasePeer::createSelectSql($criteria, $params);
$expectedSQL = 'SELECT book.ID, book.TITLE, book.ISBN, book.PRICE, book.PUBLISHER_ID, book.AUTHOR_ID, UPPER(book.TITLE) FROM `book` ORDER BY UPPER(book.TITLE) ASC';
$this->assertEquals($expectedSQL, $sql);
Propel::setDB(null, $originalDB);
}
示例4: getMockPropelConnection
/**
* @return \PropelPDO
*/
protected function getMockPropelConnection()
{
if (!class_exists('Lexik\\Bundle\\TranslationBundle\\Propel\\om\\BaseFile')) {
// classes are built in-memory.
$builder = new \PropelQuickBuilder();
$builder->setSchema(file_get_contents(__DIR__ . '/../../Resources/config/propel/schema.xml'));
$builder->setClassTargets(array('tablemap', 'peer', 'object', 'query'));
$con = $builder->build();
} else {
// in memory-classes already exist, create connection and SQL manually
$dsn = 'sqlite::memory:';
$adapter = new \DBSQLite();
$con = new \PropelPDO($dsn, null, null);
$con->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_WARNING);
$name = 'default';
if (!\Propel::isInit()) {
\Propel::setConfiguration(array('datasources' => array('default' => $name)));
}
\Propel::setDB($name, $adapter);
\Propel::setConnection($name, $con, \Propel::CONNECTION_READ);
\Propel::setConnection($name, $con, \Propel::CONNECTION_WRITE);
// don't rebuild classes
$builder = new \PropelQuickBuilder();
$builder->setSchema(file_get_contents(__DIR__ . '/../../Resources/config/propel/schema.xml'));
$builder->buildSQL($con);
}
return $con;
}
示例5: testCriterionIgnoreCase
/**
* Test Criterion.setIgnoreCase().
* As the output is db specific the test just prints the result to
* System.out
*/
public function testCriterionIgnoreCase()
{
$adapters = array(new DBMySQL(), new DBPostgres());
$expectedIgnore = array("UPPER(TABLE.COLUMN) LIKE UPPER(:p1)", "TABLE.COLUMN ILIKE :p1");
$i = 0;
foreach ($adapters as $adapter) {
Propel::setDB(null, $adapter);
$myCriteria = new Criteria();
$myCriterion = $myCriteria->getNewCriterion("TABLE.COLUMN", "FoObAr", Criteria::LIKE);
$sb = "";
$params = array();
$myCriterion->appendPsTo($sb, $params);
$expected = "TABLE.COLUMN LIKE :p1";
$this->assertEquals($expected, $sb);
$ignoreCriterion = $myCriterion->setIgnoreCase(true);
$sb = "";
$params = array();
$ignoreCriterion->appendPsTo($sb, $params);
// $expected = "UPPER(TABLE.COLUMN) LIKE UPPER(?)";
$this->assertEquals($expectedIgnore[$i], $sb);
$i++;
}
}
示例6: testOrderByIgnoreCaseWithWhereClause
public function testOrderByIgnoreCaseWithWhereClause()
{
$originalDB = Propel::getDB();
Propel::setDB(null, new DBMySQL());
$criteria = new Criteria();
$criteria->setIgnoreCase(true);
$criteria->addAscendingOrderByColumn(BookPeer::TITLE);
$criteria->add('book.title', false);
BookPeer::addSelectColumns($criteria);
$params = array();
$sql = BasePeer::createSelectSql($criteria, $params);
$expectedSQL = 'SELECT book.id, book.title, book.isbn, book.price, book.publisher_id, book.author_id, UPPER(book.title) FROM `book` WHERE UPPER(book.title)=UPPER(:p1) ORDER BY UPPER(book.title) ASC';
$this->assertEquals($expectedSQL, $sql);
Propel::setDB(null, $originalDB);
}