summaryrefslogtreecommitdiff
path: root/storage/connect/odbconn.cpp
diff options
context:
space:
mode:
authorOlivier Bertrand <bertrandop@gmail.com>2013-08-25 11:12:54 +0200
committerOlivier Bertrand <bertrandop@gmail.com>2013-08-25 11:12:54 +0200
commitdd0872eb9cb1068da7f148865a2eab49955762a5 (patch)
treeb14b77e4b1f04d8010c3bbc27190928637a7147d /storage/connect/odbconn.cpp
parent730bf6906b2bb87b3cab95949cdb0f8b080f04b1 (diff)
downloadmariadb-git-dd0872eb9cb1068da7f148865a2eab49955762a5.tar.gz
- Handle TINY in ODBC type conversion
modified: storage/connect/odbconn.cpp - Enhance TYPBLK<TYPE>::GetMaxLength modified: storage/connect/valblk.cpp
Diffstat (limited to 'storage/connect/odbconn.cpp')
-rw-r--r--storage/connect/odbconn.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/storage/connect/odbconn.cpp b/storage/connect/odbconn.cpp
index 6129c93d388..397b7c2a2f4 100644
--- a/storage/connect/odbconn.cpp
+++ b/storage/connect/odbconn.cpp
@@ -76,8 +76,9 @@ static short GetSQLType(int type)
case TYPE_SHORT: tp = SQL_SMALLINT; break;
case TYPE_INT: tp = SQL_INTEGER; break;
case TYPE_DATE: tp = SQL_TIMESTAMP; break;
- case TYPE_BIGINT: tp = SQL_BIGINT; break; // (-5)
+ case TYPE_BIGINT: tp = SQL_BIGINT; break; // (-5)
case TYPE_FLOAT: tp = SQL_DOUBLE; break;
+ case TYPE_TINY : tp = SQL_TINYINT; break;
} // endswitch type
return tp;
@@ -97,6 +98,7 @@ static int GetSQLCType(int type)
case TYPE_DATE: tp = SQL_C_TIMESTAMP; break;
case TYPE_BIGINT: tp = SQL_C_SBIGINT; break;
case TYPE_FLOAT: tp = SQL_C_DOUBLE; break;
+ case TYPE_TINY : tp = SQL_C_TINYINT; break;
} // endswitch type
return tp;
@@ -127,9 +129,11 @@ int TranslateSQLType(int stp, int prec, int& len)
type = TYPE_INT;
break;
case SQL_SMALLINT: // 5
+ type = TYPE_SHORT;
+ break;
case SQL_TINYINT: // (-6)
case SQL_BIT: // (-7)
- type = TYPE_SHORT;
+ type = TYPE_TINY;
break;
case SQL_FLOAT: // 6
case SQL_REAL: // 7