Yeap. Thanks.

Tim.

p.s. Keep adding these to your 'jumbo patch' and I'll ask you for
the latest version of that once I get to work on DBD::Oracle again.
Thanks.

On Thu, Feb 28, 2002 at 03:30:12PM +0100, Steffen Goeldner wrote:
> Steffen Goeldner wrote:
> > 
> > Tim Bunce wrote:
> > >
> > > On Thu, Feb 21, 2002 at 12:14:31PM +0100, Steffen Goeldner wrote:
> > 
> > > > Should type_info_all() depend on ora_server_version(),
> > > > DBD::Oracle::ORA_OCI() or both?
> > >
> > > Both I think, since you need both to be >=8 to be able to use the
> > > types in typical situations.
> > 
> > O.k. (see attached patch).
> 
> This patch is very similar to the type_info_all() patch
> regarding the supported datatypes:
> 
>  - SQL_TYPE_TIMESTAMP
>  - SQL_CLOB
>  - SQL_BLOB
> 
> I think a test for ora_server_version() isn't necessary.
> I use OCI_V8_SYNTAX because I guess SQLT_CLOB and SQLT_BLOB
> are not defined in the Oracle 7 header files.
> 
> 
> Steffen
> *** DBD-Oracle-1.12.orig/dbdimp.c     Wed Aug 29 21:39:16 2001
> --- dbdimp.c  Wed Feb 20 22:22:08 2002
> ***************
> *** 1921,1930 ****
>           break;
>       case SQLT_CHR:  sql_fbh.dbtype = SQL_VARCHAR;       break;
>       case SQLT_LNG:  sql_fbh.dbtype = SQL_LONGVARCHAR;   break; /* long */
> !     case SQLT_DAT:  sql_fbh.dbtype = SQL_DATE;              break;
>       case SQLT_BIN:  sql_fbh.dbtype = SQL_BINARY;        break; /* raw */
>       case SQLT_LBI:  sql_fbh.dbtype = SQL_LONGVARBINARY; break; /* long raw */
>       case SQLT_AFC:  sql_fbh.dbtype = SQL_CHAR;          break; /* Ansi fixed char 
>*/
>       default:        sql_fbh.dbtype = -9000 - fbh->dbtype; /* else map type into 
>DBI reserved standard range */
>       }
>       return sql_fbh;
> --- 1921,1934 ----
>           break;
>       case SQLT_CHR:  sql_fbh.dbtype = SQL_VARCHAR;       break;
>       case SQLT_LNG:  sql_fbh.dbtype = SQL_LONGVARCHAR;   break; /* long */
> !     case SQLT_DAT:  sql_fbh.dbtype = SQL_TYPE_TIMESTAMP;break;
>       case SQLT_BIN:  sql_fbh.dbtype = SQL_BINARY;        break; /* raw */
>       case SQLT_LBI:  sql_fbh.dbtype = SQL_LONGVARBINARY; break; /* long raw */
>       case SQLT_AFC:  sql_fbh.dbtype = SQL_CHAR;          break; /* Ansi fixed char 
>*/
> + #ifdef OCI_V8_SYNTAX
> +     case SQLT_CLOB: sql_fbh.dbtype = SQL_CLOB;              break;
> +     case SQLT_BLOB: sql_fbh.dbtype = SQL_BLOB;              break;
> + #endif
>       default:        sql_fbh.dbtype = -9000 - fbh->dbtype; /* else map type into 
>DBI reserved standard range */
>       }
>       return sql_fbh;

Reply via email to