X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8907154c1a8a6882c6797d1f16393ddfb23e7f3a..a1584ea1421fcf6cb3809ebc48c2fa3b38c88379:/include/wx/db.h?ds=sidebyside diff --git a/include/wx/db.h b/include/wx/db.h index 682954f59a..f678c71452 100644 --- a/include/wx/db.h +++ b/include/wx/db.h @@ -41,12 +41,7 @@ #if wxUSE_MFC #include #else // !wxUSE_MFC - #ifndef STRICT - #define STRICT 1 - #endif - - #include - #include "wx/msw/winundef.h" + #include "wx/msw/wrapwin.h" #endif // wxUSE_MFC/!wxUSE_MFC // If you use the wxDbCreateDataSource() function with MSW/VC6, @@ -63,8 +58,7 @@ #include "odbcinst.h" #else #if defined(__WINDOWS__) && ( defined(HAVE_W32API_H) || defined(__BORLANDC__) ) - #include - #include "wx/msw/winundef.h" + #include "wx/msw/wrapwin.h" #endif extern "C" { #if defined(wxUSE_BUILTIN_IODBC) && wxUSE_BUILTIN_IODBC @@ -80,11 +74,22 @@ #endif #endif #else + #if defined( __WXMOTIF__ ) && defined( __VMS ) + // solves a type definition mismatch between IODBC and MOTIF on OpenVMS + #define BOOL int + #endif + #if defined( __DARWIN__ ) + // solves a type definition mismatch between IODBC and Cocoa + #define BOOL signed char + #endif #include #include //#if wxUSE_UNICODE // #include //#endif + #if defined( __WXMOTIF__ ) && defined( __VMS ) + #undef BOOL + #endif #endif } #endif @@ -158,6 +163,7 @@ const int DB_DATA_TYPE_INTEGER = 2; const int DB_DATA_TYPE_FLOAT = 3; const int DB_DATA_TYPE_DATE = 4; const int DB_DATA_TYPE_BLOB = 5; +const int DB_DATA_TYPE_MEMO = 6; const int DB_SELECT_KEYFIELDS = 1; const int DB_SELECT_WHERE = 2; @@ -376,10 +382,10 @@ struct WXDLLIMPEXP_ODBC wxDbSqlTypeInfo class WXDLLIMPEXP_ODBC wxDbColFor { public: - wxString s_Field; // Formated String for Output - wxString s_Format[7]; // Formated Objects - TIMESTAMP has the biggest (7) - wxString s_Amount[7]; // Formated Objects - amount of things that can be formatted - int i_Amount[7]; // Formated Objects - TT MM YYYY HH MM SS m + wxString s_Field; // Formatted String for Output + wxString s_Format[7]; // Formatted Objects - TIMESTAMP has the biggest (7) + wxString s_Amount[7]; // Formatted Objects - amount of things that can be formatted + int i_Amount[7]; // Formatted Objects - TT MM YYYY HH MM SS m int i_Nation; // 0 = timestamp , 1=EU, 2=UK, 3=International, 4=US int i_dbDataType; // conversion of the 'sqlDataType' to the generic data type used by these classes SWORD i_sqlDataType; @@ -555,6 +561,7 @@ private: wxDbSqlTypeInfo typeInfFloat; wxDbSqlTypeInfo typeInfDate; wxDbSqlTypeInfo typeInfBlob; + wxDbSqlTypeInfo typeInfMemo; #endif public: @@ -694,6 +701,7 @@ public: wxDbSqlTypeInfo GetTypeInfFloat() {return typeInfFloat;} wxDbSqlTypeInfo GetTypeInfDate() {return typeInfDate;} wxDbSqlTypeInfo GetTypeInfBlob() {return typeInfBlob;} + wxDbSqlTypeInfo GetTypeInfMemo() {return typeInfMemo;} // tableName can refer to a table, view, alias or synonym bool TableExists(const wxString &tableName, const wxChar *userID=NULL, @@ -724,6 +732,9 @@ public: 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; }