Permalink
Browse files

Moving shared method from DboMysqli and DboMysql up to DboMysqlBase. F…

…ixes #358
  • Loading branch information...
1 parent 51d0805 commit 64dffb76632d316a50e178c4be69d48f5f3abf00 @markstory markstory committed Nov 25, 2009
Showing with 47 additions and 94 deletions.
  1. +47 −47 cake/libs/model/datasources/dbo/dbo_mysql.php
  2. +0 −47 cake/libs/model/datasources/dbo/dbo_mysqli.php
@@ -363,6 +363,53 @@ function insertMulti($table, $fields, $values) {
$values = implode(', ', $values);
$this->query("INSERT INTO {$table} ({$fields}) VALUES {$values}");
}
+/**
+ * Converts database-layer column types to basic types
+ *
+ * @param string $real Real database-layer column type (i.e. "varchar(255)")
+ * @return string Abstract column type (i.e. "string")
+ */
+ function column($real) {
+ if (is_array($real)) {
+ $col = $real['name'];
+ if (isset($real['limit'])) {
+ $col .= '('.$real['limit'].')';
+ }
+ return $col;
+ }
+
+ $col = str_replace(')', '', $real);
+ $limit = $this->length($real);
+ if (strpos($col, '(') !== false) {
+ list($col, $vals) = explode('(', $col);
+ }
+
+ if (in_array($col, array('date', 'time', 'datetime', 'timestamp'))) {
+ return $col;
+ }
+ if (($col == 'tinyint' && $limit == 1) || $col == 'boolean') {
+ return 'boolean';
+ }
+ if (strpos($col, 'int') !== false) {
+ return 'integer';
+ }
+ if (strpos($col, 'char') !== false || $col == 'tinytext') {
+ return 'string';
+ }
+ if (strpos($col, 'text') !== false) {
+ return 'text';
+ }
+ if (strpos($col, 'blob') !== false || $col == 'binary') {
+ return 'binary';
+ }
+ if (strpos($col, 'float') !== false || strpos($col, 'double') !== false || strpos($col, 'decimal') !== false) {
+ return 'float';
+ }
+ if (strpos($col, 'enum') !== false) {
+ return "enum($vals)";
+ }
+ return 'text';
+ }
}
/**
@@ -570,53 +617,6 @@ function lastInsertId($source = null) {
return null;
}
/**
- * Converts database-layer column types to basic types
- *
- * @param string $real Real database-layer column type (i.e. "varchar(255)")
- * @return string Abstract column type (i.e. "string")
- */
- function column($real) {
- if (is_array($real)) {
- $col = $real['name'];
- if (isset($real['limit'])) {
- $col .= '('.$real['limit'].')';
- }
- return $col;
- }
-
- $col = str_replace(')', '', $real);
- $limit = $this->length($real);
- if (strpos($col, '(') !== false) {
- list($col, $vals) = explode('(', $col);
- }
-
- if (in_array($col, array('date', 'time', 'datetime', 'timestamp'))) {
- return $col;
- }
- if (($col == 'tinyint' && $limit == 1) || $col == 'boolean') {
- return 'boolean';
- }
- if (strpos($col, 'int') !== false) {
- return 'integer';
- }
- if (strpos($col, 'char') !== false || $col == 'tinytext') {
- return 'string';
- }
- if (strpos($col, 'text') !== false) {
- return 'text';
- }
- if (strpos($col, 'blob') !== false || $col == 'binary') {
- return 'binary';
- }
- if (strpos($col, 'float') !== false || strpos($col, 'double') !== false || strpos($col, 'decimal') !== false) {
- return 'float';
- }
- if (strpos($col, 'enum') !== false) {
- return "enum($vals)";
- }
- return 'text';
- }
-/**
* Enter description here...
*
* @param unknown_type $results
@@ -252,53 +252,6 @@ function lastInsertId($source = null) {
return null;
}
/**
- * Converts database-layer column types to basic types
- *
- * @param string $real Real database-layer column type (i.e. "varchar(255)")
- * @return string Abstract column type (i.e. "string")
- */
- function column($real) {
- if (is_array($real)) {
- $col = $real['name'];
- if (isset($real['limit'])) {
- $col .= '('.$real['limit'].')';
- }
- return $col;
- }
-
- $col = str_replace(')', '', $real);
- $limit = $this->length($real);
- if (strpos($col, '(') !== false) {
- list($col, $vals) = explode('(', $col);
- }
-
- if (in_array($col, array('date', 'time', 'datetime', 'timestamp'))) {
- return $col;
- }
- if (($col == 'tinyint' && $limit == 1) || $col == 'boolean') {
- return 'boolean';
- }
- if (strpos($col, 'int') !== false) {
- return 'integer';
- }
- if (strpos($col, 'char') !== false || $col == 'tinytext') {
- return 'string';
- }
- if (strpos($col, 'text') !== false) {
- return 'text';
- }
- if (strpos($col, 'blob') !== false || $col == 'binary') {
- return 'binary';
- }
- if (strpos($col, 'float') !== false || strpos($col, 'double') !== false || strpos($col, 'decimal') !== false) {
- return 'float';
- }
- if (strpos($col, 'enum') !== false) {
- return "enum($vals)";
- }
- return 'text';
- }
-/**
* Enter description here...
*
* @param unknown_type $results

0 comments on commit 64dffb7

Please sign in to comment.