MysqlDBFactory
class MysqlDBFactory extends DBFactory
MySQL 固有の処理をするクラス.
このクラスを直接インスタンス化しないこと. 必ず \Eccube\Framework\DB\DBFactory クラスを経由してインスタンス化する. また, \Eccube\Framework\DB\DBFactory クラスの関数を必ずオーバーライドしている必要がある.
Properties
$objQuery | Query インスタンス |
Methods
DB_TYPE に応じた DBFactory インスタンスを生成する.
DBのバージョンを取得する.
MySQL 用の SQL 文に変更する.
昨日の売上高・売上件数を算出する SQL を返す.
当月の売上高・売上件数を算出する SQL を返す.
昨日のレビュー書き込み件数を算出する SQL を返す.
メール送信履歴の start_date の検索条件の SQL を返す.
ダウンロード販売の検索条件の SQL を返す.
文字列連結を行う.
テーブルを検索する.
インデックス作成の追加定義を取得する
SQL 文に OFFSET, LIMIT を付加する。
文字コード情報を取得する
売上集計の期間別集計のSQLを返す
売上集計の年代別集計の年代抽出部分のSQLを返す
ILIKE句 を LIKE句へ変換する.
RANDOM() を RAND() に変換する.
TRUNC() を TRUNCATE() に変換する.
ARRAYTOSTRING(ARRAY(A),B) を GROUP_CONCAT() に変換する.
擬似表を表すSQL文(FROM 句)を取得する
Details
in DBFactory at line 35
static DBFactory
getInstance(string $db_type = DB_TYPE)
DB_TYPE に応じた DBFactory インスタンスを生成する.
in DBFactory at line 59
string
getDSN(string $dsn = '')
データソース名を取得する.
引数 $dsn が空でデータソースが定義済みの場合はDB接続パラメータの連想配列を返す DEFAULT_DSN が未定義の場合は void となる. $dsn が空ではない場合は, $dsn の値を返す.
at line 41
string
sfGetDBVersion(string $dsn = '')
DBのバージョンを取得する.
at line 57
string
sfChangeMySQL(string $sql)
MySQL 用の SQL 文に変更する.
at line 92
string
getOrderYesterdaySql(string $method)
昨日の売上高・売上件数を算出する SQL を返す.
at line 106
string
getOrderMonthSql(string $method)
当月の売上高・売上件数を算出する SQL を返す.
at line 120
string
getReviewYesterdaySql()
昨日のレビュー書き込み件数を算出する SQL を返す.
at line 136
string
getSendHistoryWhereStartdateSql()
メール送信履歴の start_date の検索条件の SQL を返す.
at line 147
string
getDownloadableDaysWhereSql(string $dtb_order_alias = 'dtb_order')
ダウンロード販売の検索条件の SQL を返す.
at line 217
string
concatColumn(string[] $columns)
文字列連結を行う.
at line 242
array
findTableNames(string $expression = '')
テーブルを検索する.
引数に部分一致するテーブル名を配列で返す.
at line 324
array
sfGetCreateIndexDefinition($table, $name, $definition)
インデックス作成の追加定義を取得する
引数に部分一致するテーブル名を配列で返す.
at line 357
void
initObjQuery(Query $objQuery)
各 DB に応じた Query での初期化を行う
in DBFactory at line 222
string
addLimitOffset(string $sql, integer $limit, integer $offset)
SQL 文に OFFSET, LIMIT を付加する。
in DBFactory at line 241
string
alldtlSQL(string $where_products_class = '')
商品詳細の SQL を取得する.
at line 78
array
getCharSet()
文字コード情報を取得する
at line 169
string
getOrderTotalDaysWhereSql(mixed $type)
売上集計の期間別集計のSQLを返す
at line 206
string
getOrderTotalAgeColSql()
売上集計の年代別集計の年代抽出部分のSQLを返す
at line 259
string
sfChangeILIKE(string $sql)
ILIKE句 を LIKE句へ変換する.
at line 273
string
sfChangeRANDOM(string $sql)
RANDOM() を RAND() に変換する.
at line 287
string
sfChangeTrunc(string $sql)
TRUNC() を TRUNCATE() に変換する.
at line 301
string
sfChangeArrayToString(string $sql)
ARRAYTOSTRING(ARRAY(A),B) を GROUP_CONCAT() に変換する.
at line 346
string
getDummyFromClauseSql()
擬似表を表すSQL文(FROM 句)を取得する