summaryrefslogtreecommitdiff
path: root/datadict
diff options
context:
space:
mode:
authorMark Newnham <mark@newnhams.com>2016-01-30 12:37:37 -0700
committerDamien Regad <dregad@mantisbt.org>2016-01-31 11:23:51 +0100
commit6005cb728243288093ea4c32112d350c138adf30 (patch)
treefa08091b52df6195a0d842bdeb1a1e57b93b9f3e /datadict
parentbcfce82f1de8ec85e84023399b279838bf161e6b (diff)
downloadadodb-6005cb728243288093ea4c32112d350c138adf30.tar.gz
adodb-6005cb728243288093ea4c32112d350c138adf30.tar.bz2
adodb-6005cb728243288093ea4c32112d350c138adf30.zip
A user-defined default Metatype is now available
The user can now define a constant ADODB_DEFAULT_METATYPE. This overrides the original default value of 'N' and allows the user to control how a field of unknown metaType is presented. The constant controls the behavior of the returned value from the method MetaType(). Fixes #165
Diffstat (limited to 'datadict')
-rw-r--r--datadict/datadict-mssqlnative.inc.php6
-rw-r--r--datadict/datadict-mysql.inc.php3
-rw-r--r--datadict/datadict-oci8.inc.php2
-rw-r--r--datadict/datadict-postgres.inc.php2
-rw-r--r--datadict/datadict-sapdb.inc.php2
5 files changed, 9 insertions, 6 deletions
diff --git a/datadict/datadict-mssqlnative.inc.php b/datadict/datadict-mssqlnative.inc.php
index 1edb85f5..15f69029 100644
--- a/datadict/datadict-mssqlnative.inc.php
+++ b/datadict/datadict-mssqlnative.inc.php
@@ -94,7 +94,10 @@ class ADODB2_mssqlnative extends ADODB_DataDict {
-3 => 'X'
);
- return $_typeConversion($t);
+ if (isset($_typeConversion[$t]))
+ return $_typeConversion[$t];
+
+ return ADODB_DEFAULT_METATYPE;
}
@@ -126,7 +129,6 @@ class ADODB2_mssqlnative extends ADODB_DataDict {
case 'F': return 'REAL';
case 'N': return 'NUMERIC';
default:
- print "RETURN $meta";
return $meta;
}
}
diff --git a/datadict/datadict-mysql.inc.php b/datadict/datadict-mysql.inc.php
index def13030..640fb87a 100644
--- a/datadict/datadict-mysql.inc.php
+++ b/datadict/datadict-mysql.inc.php
@@ -26,6 +26,7 @@ class ADODB2_mysql extends ADODB_DataDict {
function MetaType($t,$len=-1,$fieldobj=false)
{
+
if (is_object($t)) {
$fieldobj = $t;
$t = $fieldobj->type;
@@ -74,7 +75,7 @@ class ADODB2_mysql extends ADODB_DataDict {
case 'SMALLINT': return $is_serial ? 'R' : 'I2';
case 'MEDIUMINT': return $is_serial ? 'R' : 'I4';
case 'BIGINT': return $is_serial ? 'R' : 'I8';
- default: return 'N';
+ default: return ADODB_DEFAULT_METATYPE;
}
}
diff --git a/datadict/datadict-oci8.inc.php b/datadict/datadict-oci8.inc.php
index 6a32fc66..53548d34 100644
--- a/datadict/datadict-oci8.inc.php
+++ b/datadict/datadict-oci8.inc.php
@@ -69,7 +69,7 @@ class ADODB2_oci8 extends ADODB_DataDict {
return 'I';
default:
- return 'N';
+ return ADODB_DEFAULT_METATYPE;
}
}
diff --git a/datadict/datadict-postgres.inc.php b/datadict/datadict-postgres.inc.php
index e24af0d2..d2d3d6da 100644
--- a/datadict/datadict-postgres.inc.php
+++ b/datadict/datadict-postgres.inc.php
@@ -85,7 +85,7 @@ class ADODB2_postgres extends ADODB_DataDict {
return 'F';
default:
- return 'N';
+ return ADODB_DEFAULT_METATYPE;
}
}
diff --git a/datadict/datadict-sapdb.inc.php b/datadict/datadict-sapdb.inc.php
index 687f9a52..b169e924 100644
--- a/datadict/datadict-sapdb.inc.php
+++ b/datadict/datadict-sapdb.inc.php
@@ -71,7 +71,7 @@ class ADODB2_sapdb extends ADODB_DataDict {
'FLOAT' => 'F',
'FIXED' => 'N',
);
- $type = isset($maxdb_type2adodb[$t]) ? $maxdb_type2adodb[$t] : 'C';
+ $type = isset($maxdb_type2adodb[$t]) ? $maxdb_type2adodb[$t] : ADODB_DEFAULT_METATYPE;
// convert integer-types simulated with fixed back to integer
if ($t == 'FIXED' && !$fieldobj->scale && ($len == 20 || $len == 3)) {