#if wxUSE_MFC
#include <afxwin.h>
#else // !wxUSE_MFC
- #ifndef STRICT
- #define STRICT 1
- #endif
-
- #include <windows.h>
- #include "wx/msw/winundef.h"
+ #include "wx/msw/wrapwin.h"
#endif // wxUSE_MFC/!wxUSE_MFC
// If you use the wxDbCreateDataSource() function with MSW/VC6,
//#endif
#include "odbcinst.h"
#else
- #if defined(__WINDOWS__) && ( defined(HAVE_W32API_H) || defined(__BORLANDC__) )
- #include <windows.h>
- #include "wx/msw/winundef.h"
+ #if defined(__WINDOWS__) && ( defined(HAVE_W32API_H) || defined(__BORLANDC__) || defined (__DMC__))
+ #include "wx/msw/wrapwin.h"
#endif
extern "C" {
#if defined(wxUSE_BUILTIN_IODBC) && wxUSE_BUILTIN_IODBC
typedef UCHAR SQLTCHAR;
#endif
#endif
- #else
+ #else // !wxUSE_BUILTIN_IODBC
+ // SQL headers define BOOL if it's not defined yet but BOOL is also
+ // defined in many other places on other systems (Motif, at least on
+ // OpenVMS; Cocoa and X11) so prevent the problem by defining it before
+ // including these headers
+ #define BOOL int
#include <sql.h>
#include <sqlext.h>
- //#if wxUSE_UNICODE
- // #include <sqlucode.h>
- //#endif
- #endif
+ #undef BOOL
+ #endif // wxUSE_BUILTIN_IODBC/!wxUSE_BUILTIN_IODBC
}
#endif
bool getDataTypeInfo(SWORD fSqlType, wxDbSqlTypeInfo &structSQLTypeInfo);
bool setConnectionOptions(void);
void logError(const wxString &errMsg, const wxString &SQLState);
- const wxChar *convertUserID(const wxChar *userID, wxString &UserID);
+ void convertUserID(const wxChar *userID, wxString &UserID);
bool determineDataTypes(bool failOnDataTypeUnsupported);
void initialize();
bool open(bool failOnDataTypeUnsupported=true);
bool FwdOnlyCursors(void) {return fwdOnlyCursors;}
+ // return the string with all special SQL characters escaped
+ wxString EscapeSqlChars(const wxString& value);
+
// These two functions are provided strictly for use by wxDbTable.
// DO NOT USE THESE FUNCTIONS, OR MEMORY LEAKS MAY OCCUR
void incrementTableCount() { nTables++; return; }