Changeset 23124 for branches/version-2_13-dev/data/class/db/dbfactory
- Timestamp:
- 2013/08/24 23:33:52 (13 years ago)
- Location:
- branches/version-2_13-dev/data/class/db/dbfactory
- Files:
-
- 2 edited
-
SC_DB_DBFactory_MYSQL.php (modified) (19 diffs)
-
SC_DB_DBFactory_PGSQL.php (modified) (14 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_13-dev/data/class/db/dbfactory/SC_DB_DBFactory_MYSQL.php
r22856 r23124 36 36 { 37 37 /** SC_Query インスタンス */ 38 var$objQuery;38 public $objQuery; 39 39 40 40 /** 41 41 * DBのバージョンを取得する. 42 42 * 43 * @param string $dsn データソース名43 * @param string $dsn データソース名 44 44 * @return string データベースのバージョン 45 45 */ 46 function sfGetDBVersion($dsn = '')46 public function sfGetDBVersion($dsn = '') 47 47 { 48 48 $objQuery =& SC_Query_Ex::getSingletonInstance($dsn); … … 56 56 * 57 57 * @access private 58 * @param string $sql SQL 文58 * @param string $sql SQL 文 59 59 * @return string MySQL 用に置換した SQL 文 60 60 */ 61 function sfChangeMySQL($sql)61 public function sfChangeMySQL($sql) 62 62 { 63 63 // 改行、タブを1スペースに変換 … … 80 80 * @return array 文字コード情報 81 81 */ 82 function getCharSet()82 public function getCharSet() 83 83 { 84 84 $objQuery =& SC_Query_Ex::getSingletonInstance(); … … 91 91 * 昨日の売上高・売上件数を算出する SQL を返す. 92 92 * 93 * @param string $method SUM または COUNT93 * @param string $method SUM または COUNT 94 94 * @return string 昨日の売上高・売上件数を算出する SQL 95 95 */ 96 function getOrderYesterdaySql($method)96 public function getOrderYesterdaySql($method) 97 97 { 98 98 return 'SELECT ' . $method . '(total) FROM dtb_order ' … … 105 105 * 当月の売上高・売上件数を算出する SQL を返す. 106 106 * 107 * @param string $method SUM または COUNT107 * @param string $method SUM または COUNT 108 108 * @return string 当月の売上高・売上件数を算出する SQL 109 109 */ 110 function getOrderMonthSql($method)110 public function getOrderMonthSql($method) 111 111 { 112 112 return 'SELECT '.$method.'(total) FROM dtb_order ' … … 122 122 * @return string 昨日のレビュー書き込み件数を算出する SQL 123 123 */ 124 function getReviewYesterdaySql()124 public function getReviewYesterdaySql() 125 125 { 126 126 return 'SELECT COUNT(*) FROM dtb_review AS A ' … … 138 138 * @return string 検索条件の SQL 139 139 */ 140 function getSendHistoryWhereStartdateSql()140 public function getSendHistoryWhereStartdateSql() 141 141 { 142 142 return 'start_date BETWEEN date_add(CURRENT_TIMESTAMP,INTERVAL -5 minute) AND date_add(CURRENT_TIMESTAMP,INTERVAL 5 minute)'; … … 146 146 * ダウンロード販売の検索条件の SQL を返す. 147 147 * 148 * @param string $dtb_order_alias148 * @param string $dtb_order_alias 149 149 * @return string 検索条件の SQL 150 150 */ 151 function getDownloadableDaysWhereSql($dtb_order_alias = 'dtb_order')151 public function getDownloadableDaysWhereSql($dtb_order_alias = 'dtb_order') 152 152 { 153 153 return '(SELECT IF((SELECT d1.downloadable_days_unlimited FROM dtb_baseinfo d1)=1, 1, DATE(CURRENT_TIMESTAMP) <= DATE(DATE_ADD(' . $dtb_order_alias . '.payment_date, INTERVAL (SELECT downloadable_days FROM dtb_baseinfo) DAY))))'; … … 157 157 * 売上集計の期間別集計のSQLを返す 158 158 * 159 * @param mixed$type159 * @param mixed $type 160 160 * @return string 検索条件のSQL 161 161 */ 162 function getOrderTotalDaysWhereSql($type)162 public function getOrderTotalDaysWhereSql($type) 163 163 { 164 164 switch ($type) { … … 197 197 * @return string 年代抽出部分の SQL 198 198 */ 199 function getOrderTotalAgeColSql()199 public function getOrderTotalAgeColSql() 200 200 { 201 201 return 'TRUNC((YEAR(create_date) - YEAR(order_birth)) - (RIGHT(create_date, 5) < RIGHT(order_birth, 5)), -1)'; … … 205 205 * 文字列連結を行う. 206 206 * 207 * @param array$columns 連結を行うカラム名207 * @param array $columns 連結を行うカラム名 208 208 * @return string 連結後の SQL 文 209 209 */ 210 function concatColumn($columns)210 public function concatColumn($columns) 211 211 { 212 212 $sql = 'concat('; … … 230 230 * 引数に部分一致するテーブル名を配列で返す. 231 231 * 232 * @param string $expression 検索文字列233 * @return array テーブル名の配列234 */ 235 function findTableNames($expression = '')232 * @param string $expression 検索文字列 233 * @return array テーブル名の配列 234 */ 235 public function findTableNames($expression = '') 236 236 { 237 237 $objQuery =& SC_Query_Ex::getSingletonInstance(); … … 247 247 * 248 248 * @access private 249 * @param string $sql SQL文249 * @param string $sql SQL文 250 250 * @return string 変換後の SQL 文 251 251 */ 252 function sfChangeILIKE($sql)252 public function sfChangeILIKE($sql) 253 253 { 254 254 $changesql = preg_replace('/(^|[^\w])ILIKE([^\w]|$)/i', '$1LIKE$2', $sql); … … 261 261 * 262 262 * @access private 263 * @param string $sql SQL文263 * @param string $sql SQL文 264 264 * @return string 変換後の SQL 文 265 265 */ 266 function sfChangeRANDOM($sql)266 public function sfChangeRANDOM($sql) 267 267 { 268 268 $changesql = preg_replace('/(^|[^\w])RANDOM\(/i', '$1RAND(', $sql); … … 275 275 * 276 276 * @access private 277 * @param string $sql SQL文277 * @param string $sql SQL文 278 278 * @return string 変換後の SQL 文 279 279 */ 280 function sfChangeTrunc($sql)280 public function sfChangeTrunc($sql) 281 281 { 282 282 $changesql = preg_replace('/(^|[^\w])TRUNC([^\w]|$)/i', '$1TRUNCATE$2', $sql); … … 289 289 * 290 290 * @access private 291 * @param string $sql SQL文291 * @param string $sql SQL文 292 292 * @return string 変換後の SQL 文 293 293 */ 294 function sfChangeArrayToString($sql)294 public function sfChangeArrayToString($sql) 295 295 { 296 296 if (strpos(strtoupper($sql), 'ARRAY_TO_STRING') !== FALSE) { … … 311 311 * 引数に部分一致するテーブル名を配列で返す. 312 312 * 313 * @param string $table 対象テーブル名314 * @param string $name対象カラム名315 * @return array インデックス設定情報配列316 */ 317 function sfGetCreateIndexDefinition($table, $name, $definition)313 * @param string $table 対象テーブル名 314 * @param string $name 対象カラム名 315 * @return array インデックス設定情報配列 316 */ 317 public function sfGetCreateIndexDefinition($table, $name, $definition) 318 318 { 319 319 $objQuery =& SC_Query_Ex::getSingletonInstance(); … … 337 337 * @return string 338 338 */ 339 function getDummyFromClauseSql()339 public function getDummyFromClauseSql() 340 340 { 341 341 return 'FROM DUAL'; … … 345 345 * 各 DB に応じた SC_Query での初期化を行う 346 346 * 347 * @param SC_Query $objQuery SC_Query インスタンス347 * @param SC_Query $objQuery SC_Query インスタンス 348 348 * @return void 349 349 */ 350 function initObjQuery(SC_Query &$objQuery)350 public function initObjQuery(SC_Query &$objQuery) 351 351 { 352 352 $objQuery->exec('SET SESSION storage_engine = InnoDB'); -
branches/version-2_13-dev/data/class/db/dbfactory/SC_DB_DBFactory_PGSQL.php
r22856 r23124 38 38 * DBのバージョンを取得する. 39 39 * 40 * @param string $dsn データソース名40 * @param string $dsn データソース名 41 41 * @return string データベースのバージョン 42 42 */ 43 function sfGetDBVersion($dsn = '')43 public function sfGetDBVersion($dsn = '') 44 44 { 45 45 $objQuery =& SC_Query_Ex::getSingletonInstance($dsn); … … 56 56 * 57 57 * @access private 58 * @param string $sql SQL 文58 * @param string $sql SQL 文 59 59 * @return string MySQL 用に置換した SQL 文 60 60 */ 61 function sfChangeMySQL($sql)61 public function sfChangeMySQL($sql) 62 62 { 63 63 return $sql; … … 67 67 * 昨日の売上高・売上件数を算出する SQL を返す. 68 68 * 69 * @param string $method SUM または COUNT69 * @param string $method SUM または COUNT 70 70 * @return string 昨日の売上高・売上件数を算出する SQL 71 71 */ 72 function getOrderYesterdaySql($method)72 public function getOrderYesterdaySql($method) 73 73 { 74 74 return 'SELECT '.$method.'(total) FROM dtb_order ' … … 81 81 * 当月の売上高・売上件数を算出する SQL を返す. 82 82 * 83 * @param string $method SUM または COUNT83 * @param string $method SUM または COUNT 84 84 * @return string 当月の売上高・売上件数を算出する SQL 85 85 */ 86 function getOrderMonthSql($method)86 public function getOrderMonthSql($method) 87 87 { 88 88 return 'SELECT '.$method.'(total) FROM dtb_order ' … … 98 98 * @return string 昨日のレビュー書き込み件数を算出する SQL 99 99 */ 100 function getReviewYesterdaySql()100 public function getReviewYesterdaySql() 101 101 { 102 102 return 'SELECT COUNT(*) FROM dtb_review AS A ' … … 114 114 * @return string 検索条件の SQL 115 115 */ 116 function getSendHistoryWhereStartdateSql()116 public function getSendHistoryWhereStartdateSql() 117 117 { 118 118 return "start_date BETWEEN current_timestamp + '- 5 minutes' AND current_timestamp + '5 minutes'"; … … 122 122 * ダウンロード販売の検索条件の SQL を返す. 123 123 * 124 * @param string $dtb_order_alias124 * @param string $dtb_order_alias 125 125 * @return string 検索条件の SQL 126 126 */ 127 function getDownloadableDaysWhereSql($dtb_order_alias = 'dtb_order')127 public function getDownloadableDaysWhereSql($dtb_order_alias = 'dtb_order') 128 128 { 129 129 $baseinfo = SC_Helper_DB_Ex::sfGetBasisData(); … … 151 151 * 売上集計の期間別集計のSQLを返す 152 152 * 153 * @param mixed$type153 * @param mixed $type 154 154 * @return string 検索条件のSQL 155 155 */ 156 function getOrderTotalDaysWhereSql($type)156 public function getOrderTotalDaysWhereSql($type) 157 157 { 158 158 switch ($type) { … … 191 191 * @return string 年代抽出部分の SQL 192 192 */ 193 function getOrderTotalAgeColSql()193 public function getOrderTotalAgeColSql() 194 194 { 195 195 return 'TRUNC(CAST(EXTRACT(YEAR FROM AGE(create_date, order_birth)) AS INT), -1)'; … … 199 199 * 文字列連結を行う. 200 200 * 201 * @param array$columns 連結を行うカラム名201 * @param array $columns 連結を行うカラム名 202 202 * @return string 連結後の SQL 文 203 203 */ 204 function concatColumn($columns)204 public function concatColumn($columns) 205 205 { 206 206 $sql = ''; … … 224 224 * 225 225 * @deprecated SC_Query::listTables() を使用してください 226 * @param string $expression 検索文字列227 * @return array テーブル名の配列228 */ 229 function findTableNames($expression = '')226 * @param string $expression 検索文字列 227 * @return array テーブル名の配列 228 */ 229 public function findTableNames($expression = '') 230 230 { 231 231 $objQuery =& SC_Query_Ex::getSingletonInstance(); … … 253 253 * @return array 文字コード情報 254 254 */ 255 function getCharSet()255 public function getCharSet() 256 256 { 257 257 // 未実装 … … 264 264 * @return string 265 265 */ 266 function getDummyFromClauseSql()266 public function getDummyFromClauseSql() 267 267 { 268 268 return ''; … … 275 275 * @return array テーブル名の配列 276 276 */ 277 function listTables(SC_Query &$objQuery)277 public function listTables(SC_Query &$objQuery) 278 278 { 279 279 $col = 'tablename';
Note: See TracChangeset
for help on using the changeset viewer.
