diff options
Diffstat (limited to 'src/interfaces/jdbc/org/postgresql')
-rw-r--r-- | src/interfaces/jdbc/org/postgresql/jdbc1/ResultSetMetaData.java | 12 | ||||
-rw-r--r-- | src/interfaces/jdbc/org/postgresql/jdbc2/ResultSetMetaData.java | 12 |
2 files changed, 24 insertions, 0 deletions
diff --git a/src/interfaces/jdbc/org/postgresql/jdbc1/ResultSetMetaData.java b/src/interfaces/jdbc/org/postgresql/jdbc1/ResultSetMetaData.java index a78612b085b..c39afa34b33 100644 --- a/src/interfaces/jdbc/org/postgresql/jdbc1/ResultSetMetaData.java +++ b/src/interfaces/jdbc/org/postgresql/jdbc1/ResultSetMetaData.java @@ -290,6 +290,12 @@ public class ResultSetMetaData implements java.sql.ResultSetMetaData return 16; case Types.VARCHAR: return 0; + case Types.NUMERIC: + Field f = getField(column); + if(f != null) + return ((0xFFFF0000)&f.mod)>>16; + else + return 0; default: return 0; } @@ -321,6 +327,12 @@ public class ResultSetMetaData implements java.sql.ResultSetMetaData return 16; case Types.VARCHAR: return 0; + case Types.NUMERIC: + Field f = getField(column); + if(f != null) + return (((0x0000FFFF)&f.mod)-4); + else + return 0; default: return 0; } diff --git a/src/interfaces/jdbc/org/postgresql/jdbc2/ResultSetMetaData.java b/src/interfaces/jdbc/org/postgresql/jdbc2/ResultSetMetaData.java index ebcf137a1eb..7e38236552a 100644 --- a/src/interfaces/jdbc/org/postgresql/jdbc2/ResultSetMetaData.java +++ b/src/interfaces/jdbc/org/postgresql/jdbc2/ResultSetMetaData.java @@ -285,6 +285,12 @@ public class ResultSetMetaData implements java.sql.ResultSetMetaData return 16; case Types.VARCHAR: return 0; + case Types.NUMERIC: + Field f = getField(column); + if(f != null) + return ((0xFFFF0000)&f.mod)>>16; + else + return 0; default: return 0; } @@ -316,6 +322,12 @@ public class ResultSetMetaData implements java.sql.ResultSetMetaData return 16; case Types.VARCHAR: return 0; + case Types.NUMERIC: + Field f = getField(column); + if(f != null) + return (((0x0000FFFF)&f.mod)-4); + else + return 0; default: return 0; } |