本文整理匯總了PHP中Doctrine_Connection::getDriverName方法的典型用法代碼示例。如果您正苦於以下問題:PHP Doctrine_Connection::getDriverName方法的具體用法?PHP Doctrine_Connection::getDriverName怎麽用?PHP Doctrine_Connection::getDriverName使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Doctrine_Connection
的用法示例。
在下文中一共展示了Doctrine_Connection::getDriverName方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: getAdapter
protected function getAdapter(Doctrine_Connection $connection)
{
$adapterName = strtolower($connection->getDriverName());
if (!isset($this->adapters[$adapterName])) {
throw new dmException(sprintf('%s is not supported. Available adapters are %s', $adapterName, implode(', ', array_keys($this->adapters))));
}
return new $this->adapters[$adapterName]($this->filesystem, $connection);
}
示例2: factory
/** Factory method.
*
* @param $connection Doctrine_Connection
*
* @return static
*/
public static function factory(Doctrine_Connection $connection)
{
switch ($connection->getDriverName()) {
case Test_Database_Driver_Mysql::NAME:
return new Test_Database_Driver_Mysql($connection);
}
return new self($connection);
}
示例3: canUpdateWithOrderBy
protected function canUpdateWithOrderBy(Doctrine_Connection $conn)
{
// If transaction level is greater than 1,
// query will throw exceptions when using this function
return $conn->getTransactionLevel() < 2 && $conn->getDriverName() != 'Pgsql' && $conn->getDriverName() != 'Sqlite' && $conn->getDriverName() != 'Mssql';
}
示例4: canUpdateWithOrderBy
protected function canUpdateWithOrderBy(Doctrine_Connection $conn)
{
// If transaction level is greater than 1,
// query will throw exceptions when using this function
return $conn->getTransactionLevel() < 2 &&
// some drivers do not support UPDATE with ORDER BY query syntax
$conn->getDriverName() != 'Pgsql' && $conn->getDriverName() != 'Sqlite';
}
示例5: getTimeRangeQuery
private static function getTimeRangeQuery(Doctrine_Connection $c, $filter)
{
$prefix = $c->getPrefix();
$startTime = $filter->getStartTime();
$endTime = $filter->getEndTime();
$DATE_FORMAT;
$DATE;
$NOW;
switch (strtolower($c->getDriverName())) {
case 'pgsql':
$DATE_FORMAT = "'YYYY-MM-DD HH24:MI:SS'";
$DATE = "TO_DATE";
$NOW = "NOW()";
break;
case 'oracle':
case 'icingaOracle':
$DATE_FORMAT = "'YYYY-MM-DD HH24:MI:SS'";
$DATE = "TO_DATE";
$NOW = "CURRENT_DATE";
break;
case 'mysql':
$DATE_FORMAT = "'%Y-%m-%d %H:%i:%s'";
$DATE = "STR_TO_DATE";
$NOW = "now()";
break;
}
if (!$startTime && !$endTime) {
return "SELECT * FROM " . $prefix . "slahistory";
}
$timeRange = "SELECT state, object_id, scheduled_downtime,acknowledgement_time";
if (!$startTime) {
$timeRange .= ",start_time";
} else {
$timeRange .= "\n ,CASE\n WHEN start_time <= {$DATE}('{$startTime}',{$DATE_FORMAT}) AND\n COALESCE(acknowledgement_time, end_time, {$NOW}) >= {$DATE}('{$startTime}',{$DATE_FORMAT}) THEN {$DATE}('{$startTime}',{$DATE_FORMAT})\n ELSE start_time\n END AS start_time";
}
if (!$endTime) {
$timeRange .= ",COALESCE(end_time,{$NOW}) as end_time";
} else {
$timeRange .= "\n ,CASE\n WHEN COALESCE(acknowledgement_time, end_time, {$NOW}) >= {$DATE}('{$endTime}',{$DATE_FORMAT}) AND\n start_time <= {$DATE}('{$endTime}',{$DATE_FORMAT}) THEN {$DATE}('{$endTime}',{$DATE_FORMAT})\n ELSE COALESCE(end_time,{$NOW});\n END AS end_time";
}
$query = $timeRange . " FROM " . $prefix . "slahistory ";
if (!($endTime || $startTime)) {
return $query;
}
$query .= "WHERE ";
if ($endTime) {
$query .= "end_time <= {$DATE}('{$endTime}',{$DATE_FORMAT}) ";
}
if ($endTime && $startTime) {
$query .= " AND ";
}
if ($startTime) {
$query .= "start_time >= {$DATE}('{$startTime}',{$DATE_FORMAT}) ";
}
return $query;
}