diff --git a/odbc/inc/TODBCStatement.h b/odbc/inc/TODBCStatement.h index d40a6703242ae3faf229092b31458942679722a9..5bbef0b21b9fc2c1180e60567325f18cfdd510a0 100644 --- a/odbc/inc/TODBCStatement.h +++ b/odbc/inc/TODBCStatement.h @@ -1,4 +1,4 @@ -// @(#)root/odbc:$Name: $:$Id: TODBCStatement.h,v 1.1 2006/02/6 10:00:44 rdm Exp $ +// @(#)root/odbc:$Name: $:$Id: TODBCStatement.h,v 1.1 2006/04/17 14:12:52 rdm Exp $ // Author: Sergey Linev 6/02/2006 /************************************************************************* @@ -15,6 +15,9 @@ #ifndef ROOT_TSQLStatement #include "TSQLStatement.h" #endif +#ifndef ROOT_TODBCTypes +#include "TODBCTypes.h" +#endif #ifdef __CINT__ typedef void * SQLHSTMT; @@ -41,7 +44,7 @@ protected: Int_t sqlctype; void *buffer; Int_t elementsize; - Long_t *lenarray; + ODBCInt_t *lenarray; char *strbuffer; char *namebuffer; }; diff --git a/odbc/inc/TODBCTypes.h b/odbc/inc/TODBCTypes.h new file mode 100644 index 0000000000000000000000000000000000000000..55c89bc4ede26340835983876ba01c49a6f8669f --- /dev/null +++ b/odbc/inc/TODBCTypes.h @@ -0,0 +1,29 @@ +// @(#)root/odbc:$Name: $:$Id: TODBCRow.h,v 1.1 2006/04/17 14:12:52 rdm Exp $ +// Author: Fons Rademakers 18/04/2006 + +/************************************************************************* + * Copyright (C) 1995-2006, Rene Brun and Fons Rademakers. * + * All rights reserved. * + * * + * For the licensing terms see $ROOTSYS/LICENSE. * + * For the list of contributors see $ROOTSYS/README/CREDITS. * + *************************************************************************/ + +#ifndef ROOT_TODBCTypes +#define ROOT_TODBCTypes + +#ifndef ROOT_Rtypes +#include "Rtypes.h" +#endif + +// Microsoft is confused about sizes on different platforms. +#ifdef R__B64 +typedef UInt_t ODBCUInt_t; +typedef Int_t ODBCInt_t; +#else +typedef ULong_t ODBCUInt_t; +typedef Long_t ODBCInt_t; +#endif + +#endif + diff --git a/odbc/src/TODBCResult.cxx b/odbc/src/TODBCResult.cxx index 02b7b8b376809f360efbb2fdc92b28aa09bce9d3..efffc2891a8916bc051d1d05f4ef7d24c28bebba 100644 --- a/odbc/src/TODBCResult.cxx +++ b/odbc/src/TODBCResult.cxx @@ -1,4 +1,4 @@ -// @(#)root/odbc:$Name: $:$Id: TODBCResult.cxx,v 1.1.1.1 2000/05/16 17:00:58 rdm Exp $ +// @(#)root/odbc:$Name: $:$Id: TODBCResult.cxx,v 1.1 2006/04/17 14:12:52 rdm Exp $ // Author: Sergey Linev 6/02/2006 /************************************************************************* @@ -11,6 +11,8 @@ #include "TODBCResult.h" #include "TODBCRow.h" +#include "TODBCTypes.h" + ClassImp(TODBCResult) @@ -52,7 +54,7 @@ const char *TODBCResult::GetFieldName(Int_t field) SQLSMALLINT nameLength; SQLSMALLINT dataType; - ULong_t columnSize; + ODBCUInt_t columnSize; SQLSMALLINT decimalDigits; SQLSMALLINT nullable; diff --git a/odbc/src/TODBCRow.cxx b/odbc/src/TODBCRow.cxx index fddc6825a6159ae2eccfd1514c3f438904064fd4..dbebefc24f64a0fa10cc25422ff9da4116aeeca6 100644 --- a/odbc/src/TODBCRow.cxx +++ b/odbc/src/TODBCRow.cxx @@ -1,4 +1,4 @@ -// @(#)root/odbc:$Name: $:$Id: TODBCRow.cxx,v 1.1.1.1 2000/05/16 17:00:58 rdm Exp $ +// @(#)root/odbc:$Name: $:$Id: TODBCRow.cxx,v 1.1 2006/04/17 14:12:52 rdm Exp $ // Author: Sergey Linev 6/02/2006 /************************************************************************* @@ -10,6 +10,7 @@ *************************************************************************/ #include "TODBCRow.h" +#include "TODBCTypes.h" #include <sqlext.h> @@ -75,7 +76,7 @@ const char *TODBCRow::GetField(Int_t field) fBuffer[field] = new char[buffer_len]; - Long_t ressize; + ODBCInt_t ressize; SQLGetData(fHstmt, field+1, SQL_C_CHAR, fBuffer[field], buffer_len, &ressize); diff --git a/odbc/src/TODBCStatement.cxx b/odbc/src/TODBCStatement.cxx index 1deb3fbcca4dba0af143752fbf8ecef908354fb8..8f2afccd08e518bff8d00966350cd1062feeb4f4 100644 --- a/odbc/src/TODBCStatement.cxx +++ b/odbc/src/TODBCStatement.cxx @@ -1,4 +1,4 @@ -// @(#)root/odbc:$Name: $:$Id: TODBCStatement.cxx,v 1.1 2006/02/6 10:00:44 rdm Exp $ +// @(#)root/odbc:$Name: $:$Id: TODBCStatement.cxx,v 1.1 2006/04/17 14:12:52 rdm Exp $ // Author: Sergey Linev 6/02/2006 /************************************************************************* @@ -20,13 +20,12 @@ #include "TODBCStatement.h" - #include "TDataType.h" #include "snprintf.h" +#include "Riostream.h" -#include "sqlext.h" +#include <sqlext.h> -#include "Riostream.h" ClassImp(TODBCStatement) @@ -153,7 +152,7 @@ Bool_t TODBCStatement::Process() Int_t TODBCStatement::GetNumAffectedRows() { - Long_t RowCount; + ODBCInt_t RowCount; SQLRETURN retcode = SQL_SUCCESS; retcode = SQLRowCount(fHstmt, &RowCount); @@ -195,7 +194,7 @@ Bool_t TODBCStatement::StoreResult() SQLCHAR ColumnName[1024]; SQLSMALLINT NameLength; SQLSMALLINT DataType; - ULong_t ColumnSize; + ODBCUInt_t ColumnSize; SQLSMALLINT DecimalDigits; SQLSMALLINT Nullable; @@ -409,7 +408,7 @@ Bool_t TODBCStatement::BindColumn(Int_t ncol, SQLSMALLINT sqltype, SQLUINTEGER s fBuffer[ncol].sqlctype = sqlctype; fBuffer[ncol].buffer = malloc(elemsize * fBufferLength); fBuffer[ncol].elementsize = elemsize; - fBuffer[ncol].lenarray = new Long_t[fBufferLength]; + fBuffer[ncol].lenarray = new ODBCInt_t[fBufferLength]; SQLRETURN retcode = SQLBindCol(fHstmt, ncol+1, sqlctype, fBuffer[ncol].buffer, @@ -455,7 +454,7 @@ Bool_t TODBCStatement::BindParam(Int_t npar, Int_t roottype, Int_t size) } void* buffer = malloc(elemsize * fBufferLength); - Long_t *lenarray = new Long_t[fBufferLength]; + ODBCInt_t *lenarray = new ODBCInt_t[fBufferLength]; SQLRETURN retcode = SQLBindParameter(fHstmt, npar+1, SQL_PARAM_INPUT,