Steffen Goeldner wrote:
> 
> SQL - Part 3: Call-Level Interface (SQL/CLI) moved from CD to FCD:
> 
>   
><http://www.jtc1sc32.org/sc32/jtc1sc32.nsf/Attachments/7E3B41486BD99C3488256B410064C877/$FILE/32N0744T.PDF>
> 
> Good news: SQL_BIT was removed from sqlcli.h!

Bad news: they introduced SQL_BIGINT (25), which conflicts with
          ODBC's SQL_BIGINT (-5).

The attached patch shows possible changes to DBI-1.201.

 
Steffen
diff -c DBI-1.201.orig/DBI.pm DBI-1.201/DBI.pm
*** DBI-1.201.orig/DBI.pm       Thu Jan 10 16:15:00 2002
--- DBI-1.201/DBI.pm    Tue Jan 15 20:32:48 2002
***************
*** 162,169 ****
        SQL_WLONGVARCHAR
        SQL_WVARCHAR
        SQL_WCHAR
        SQL_TINYINT
-       SQL_BIGINT
        SQL_LONGVARBINARY
        SQL_VARBINARY
        SQL_BINARY
--- 162,169 ----
        SQL_WLONGVARCHAR
        SQL_WVARCHAR
        SQL_WCHAR
+       SQL_BIT
        SQL_TINYINT
        SQL_LONGVARBINARY
        SQL_VARBINARY
        SQL_BINARY
***************
*** 184,190 ****
        SQL_TIME
        SQL_TIMESTAMP
        SQL_VARCHAR
-       SQL_BIT_VARYING
        SQL_BOOLEAN
        SQL_UDT
        SQL_UDT_LOCATOR
--- 184,189 ----
***************
*** 196,201 ****
--- 195,202 ----
        SQL_CLOB_LOCATOR
        SQL_ARRAY
        SQL_ARRAY_LOCATOR
+       SQL_MULTISET
+       SQL_MULTISET_LOCATOR
        SQL_TYPE_DATE
        SQL_TYPE_TIME
        SQL_TYPE_TIMESTAMP
***************
*** 1818,1824 ****
    }
  
  These constants are defined by SQL/CLI, ODBC or both.
! C<SQL_BIT> is (currently) omitted, because SQL/CLI and ODBC provide
  conflicting codes.
  
  See the L</type_info>, L</type_info_all>, and L</bind_param> methods
--- 1819,1825 ----
    }
  
  These constants are defined by SQL/CLI, ODBC or both.
! C<SQL_BIGINT> is (currently) omitted, because SQL/CLI and ODBC provide
  conflicting codes.
  
  See the L</type_info>, L</type_info_all>, and L</bind_param> methods
diff -c DBI-1.201.orig/DBI.xs DBI-1.201/DBI.xs
*** DBI-1.201.orig/DBI.xs       Thu Jan 10 16:14:38 2002
--- DBI-1.201/DBI.xs    Tue Jan 15 20:29:10 2002
***************
*** 2482,2490 ****
        SQL_ALL_TYPES                    = SQL_ALL_TYPES
        SQL_ARRAY                        = SQL_ARRAY
        SQL_ARRAY_LOCATOR                = SQL_ARRAY_LOCATOR
-       SQL_BIGINT                       = SQL_BIGINT
        SQL_BINARY                       = SQL_BINARY
!       SQL_BIT_VARYING                  = SQL_BIT_VARYING
        SQL_BLOB                         = SQL_BLOB
        SQL_BLOB_LOCATOR                 = SQL_BLOB_LOCATOR
        SQL_BOOLEAN                      = SQL_BOOLEAN
--- 2482,2489 ----
        SQL_ALL_TYPES                    = SQL_ALL_TYPES
        SQL_ARRAY                        = SQL_ARRAY
        SQL_ARRAY_LOCATOR                = SQL_ARRAY_LOCATOR
        SQL_BINARY                       = SQL_BINARY
!       SQL_BIT                          = SQL_BIT
        SQL_BLOB                         = SQL_BLOB
        SQL_BLOB_LOCATOR                 = SQL_BLOB_LOCATOR
        SQL_BOOLEAN                      = SQL_BOOLEAN
***************
*** 2514,2519 ****
--- 2513,2520 ----
        SQL_INTERVAL_YEAR_TO_MONTH       = SQL_INTERVAL_YEAR_TO_MONTH
        SQL_LONGVARBINARY                = SQL_LONGVARBINARY
        SQL_LONGVARCHAR                  = SQL_LONGVARCHAR
+       SQL_MULTISET                     = SQL_MULTISET
+       SQL_MULTISET_LOCATOR             = SQL_MULTISET_LOCATOR
        SQL_NUMERIC                      = SQL_NUMERIC
        SQL_REAL                         = SQL_REAL
        SQL_REF                          = SQL_REF
diff -c DBI-1.201.orig/dbi_sql.h DBI-1.201/dbi_sql.h
*** DBI-1.201.orig/dbi_sql.h    Thu Jan 10 16:14:58 2002
--- DBI-1.201/dbi_sql.h Tue Jan 15 21:05:42 2002
***************
*** 14,19 ****
--- 14,20 ----
  #define SQL_WLONGVARCHAR                 (-10)
  #define SQL_WVARCHAR                      (-9)
  #define SQL_WCHAR                         (-8)
+ #define SQL_BIT                           (-7)
  #define SQL_TINYINT                       (-6)
  #define SQL_BIGINT                        (-5)
  #define SQL_LONGVARBINARY                 (-4)
***************
*** 36,43 ****
  #define SQL_TIME                           10
  #define SQL_TIMESTAMP                      11
  #define SQL_VARCHAR                        12
- #define SQL_BIT                            14
- #define SQL_BIT_VARYING                    15
  #define SQL_BOOLEAN                        16
  #define SQL_UDT                            17
  #define SQL_UDT_LOCATOR                    18
--- 37,42 ----
***************
*** 49,54 ****
--- 48,55 ----
  #define SQL_CLOB_LOCATOR                   41
  #define SQL_ARRAY                          50
  #define SQL_ARRAY_LOCATOR                  51
+ #define SQL_MULTISET                       55
+ #define SQL_MULTISET_LOCATOR               56
  #define SQL_TYPE_DATE                      91
  #define SQL_TYPE_TIME                      92
  #define SQL_TYPE_TIMESTAMP                 93
Common subdirectories: DBI-1.201.orig/lib and DBI-1.201/lib
Common subdirectories: DBI-1.201.orig/t and DBI-1.201/t

Reply via email to