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 47
static DBFactory
getInstance(string $db_type = DB_TYPE)
DB_TYPE に応じた DBFactory インスタンスを生成する.
in DBFactory at line 71
string
getDSN(string $dsn = '')
データソース名を取得する.
引数 $dsn が空でデータソースが定義済みの場合はDB接続パラメータの連想配列を返す DEFAULT_DSN が未定義の場合は void となる. $dsn が空ではない場合は, $dsn の値を返す.
at line 53
string
sfGetDBVersion(string $dsn = '')
DBのバージョンを取得する.
at line 69
string
sfChangeMySQL(string $sql)
MySQL 用の SQL 文に変更する.
at line 104
string
getOrderYesterdaySql(string $method)
昨日の売上高・売上件数を算出する SQL を返す.
at line 118
string
getOrderMonthSql(string $method)
当月の売上高・売上件数を算出する SQL を返す.
at line 132
string
getReviewYesterdaySql()
昨日のレビュー書き込み件数を算出する SQL を返す.
at line 148
string
getSendHistoryWhereStartdateSql()
メール送信履歴の start_date の検索条件の SQL を返す.
at line 159
string
getDownloadableDaysWhereSql(string $dtb_order_alias = 'dtb_order')
ダウンロード販売の検索条件の SQL を返す.
at line 229
string
concatColumn(string[] $columns)
文字列連結を行う.
at line 254
array
findTableNames(string $expression = '')
テーブルを検索する.
引数に部分一致するテーブル名を配列で返す.
at line 336
array
sfGetCreateIndexDefinition($table, $name, $definition)
インデックス作成の追加定義を取得する
引数に部分一致するテーブル名を配列で返す.
at line 369
void
initObjQuery(Query $objQuery)
各 DB に応じた Query での初期化を行う
in DBFactory at line 234
string
addLimitOffset(string $sql, integer $limit, integer $offset)
SQL 文に OFFSET, LIMIT を付加する。
in DBFactory at line 253
string
alldtlSQL(string $where_products_class = '')
商品詳細の SQL を取得する.
at line 90
array
getCharSet()
文字コード情報を取得する
at line 181
string
getOrderTotalDaysWhereSql(mixed $type)
売上集計の期間別集計のSQLを返す
at line 218
string
getOrderTotalAgeColSql()
売上集計の年代別集計の年代抽出部分のSQLを返す
at line 271
string
sfChangeILIKE(string $sql)
ILIKE句 を LIKE句へ変換する.
at line 285
string
sfChangeRANDOM(string $sql)
RANDOM() を RAND() に変換する.
at line 299
string
sfChangeTrunc(string $sql)
TRUNC() を TRUNCATE() に変換する.
at line 313
string
sfChangeArrayToString(string $sql)
ARRAYTOSTRING(ARRAY(A),B) を GROUP_CONCAT() に変換する.
at line 358
string
getDummyFromClauseSql()
擬似表を表すSQL文(FROM 句)を取得する