Пример #1
0
 public function testOrderByIgnoreCase()
 {
     $originalDB = Propel::getServiceContainer()->getAdapter();
     Propel::getServiceContainer()->setAdapter(Propel::getServiceContainer()->getDefaultDatasource(), new MysqlAdapter());
     $criteria = new Criteria();
     $criteria->setIgnoreCase(true);
     $criteria->addAscendingOrderByColumn(BookTableMap::TITLE);
     BookTableMap::addSelectColumns($criteria);
     $params = array();
     $sql = $criteria->createSelectSql($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::getServiceContainer()->setAdapter(Propel::getServiceContainer()->getDefaultDatasource(), $originalDB);
 }
Пример #2
0
 public function testBigIntIgnoreCaseOrderBy()
 {
     BookstoreTableMap::doDeleteAll();
     // Some sample data
     $b = new Bookstore();
     $b->setStoreName("SortTest1")->setPopulationServed(2000)->save();
     $b = new Bookstore();
     $b->setStoreName("SortTest2")->setPopulationServed(201)->save();
     $b = new Bookstore();
     $b->setStoreName("SortTest3")->setPopulationServed(302)->save();
     $b = new Bookstore();
     $b->setStoreName("SortTest4")->setPopulationServed(10000000)->save();
     $c = new Criteria();
     $c->setIgnoreCase(true);
     $c->add(BookstoreTableMap::COL_STORE_NAME, 'SortTest%', Criteria::LIKE);
     $c->addAscendingOrderByColumn(BookstoreTableMap::COL_POPULATION_SERVED);
     $rows = BookstoreQuery::create(null, $c)->find();
     $this->assertEquals('SortTest2', $rows[0]->getStoreName());
     $this->assertEquals('SortTest3', $rows[1]->getStoreName());
     $this->assertEquals('SortTest1', $rows[2]->getStoreName());
     $this->assertEquals('SortTest4', $rows[3]->getStoreName());
 }
Пример #3
0
 public function testOrderByIgnoreCase()
 {
     $originalDB = Propel::getServiceContainer()->getAdapter();
     Propel::getServiceContainer()->setAdapter(Propel::getServiceContainer()->getDefaultDatasource(), new MysqlAdapter());
     Propel::getServiceContainer()->setDefaultDatasource('bookstore');
     $criteria = new Criteria();
     $criteria->setIgnoreCase(true);
     $criteria->addAscendingOrderByColumn(BookTableMap::COL_TITLE);
     BookTableMap::addSelectColumns($criteria);
     $params = [];
     $sql = $criteria->createSelectSql($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::getServiceContainer()->setAdapter(Propel::getServiceContainer()->getDefaultDatasource(), $originalDB);
 }