mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-07-11 22:03:01 -06:00
ODBC linux fix
git-svn-id: svn://ultimatepp.org/upp/trunk@909 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
parent
ad86d0668d
commit
89728be189
2 changed files with 63 additions and 59 deletions
|
|
@ -1,59 +1,61 @@
|
|||
#ifndef _ODBC_ODBC_h
|
||||
#define _ODBC_ODBC_h
|
||||
|
||||
#include <Sql/Sql.h>
|
||||
#include <sql.h>
|
||||
#include <sqlext.h>
|
||||
|
||||
NAMESPACE_UPP
|
||||
|
||||
bool ODBCPerformScript(const String& text, StatementExecutor& executor, Gate2<int, int> progress_canceled = false);
|
||||
String MSSQLTextType(int width);
|
||||
|
||||
class ODBCSession : public SqlSession {
|
||||
public:
|
||||
virtual void Begin();
|
||||
virtual void Commit();
|
||||
virtual void Rollback();
|
||||
|
||||
virtual String Savepoint();
|
||||
virtual void RollbackTo(const String& savepoint);
|
||||
|
||||
virtual bool IsOpen() const;
|
||||
|
||||
virtual Vector<String> EnumUsers();
|
||||
virtual Vector<String> EnumDatabases();
|
||||
virtual Vector<String> EnumTables(String database);
|
||||
virtual Vector<String> EnumViews(String database);
|
||||
virtual Vector<String> EnumSequences(String database);
|
||||
virtual Vector<String> EnumPrimaryKeys(String database, String table);
|
||||
virtual String EnumRowID(String database, String table);
|
||||
|
||||
virtual RunScript GetRunScript() const { return &ODBCPerformScript; }
|
||||
|
||||
protected:
|
||||
virtual SqlConnection *CreateConnection();
|
||||
|
||||
private:
|
||||
friend class ODBCConnection;
|
||||
HENV henv;
|
||||
HDBC hdbc;
|
||||
HSTMT hstmt;
|
||||
String user;
|
||||
int tlevel;
|
||||
ODBCConnection *current;
|
||||
|
||||
void FlushConnections();
|
||||
bool IsOk(SQLRETURN ret);
|
||||
|
||||
public:
|
||||
bool Connect(const char *cs);
|
||||
void Close();
|
||||
|
||||
ODBCSession();
|
||||
~ODBCSession();
|
||||
};
|
||||
|
||||
END_UPP_NAMESPACE
|
||||
|
||||
#endif
|
||||
#ifndef _ODBC_ODBC_h
|
||||
#define _ODBC_ODBC_h
|
||||
|
||||
#include <Sql/Sql.h>
|
||||
#include <sql.h>
|
||||
#include <sqlext.h>
|
||||
|
||||
NAMESPACE_UPP
|
||||
|
||||
bool ODBCPerformScript(const String& text, StatementExecutor& executor, Gate2<int, int> progress_canceled = false);
|
||||
String MSSQLTextType(int width);
|
||||
|
||||
class ODBCConnection;
|
||||
|
||||
class ODBCSession : public SqlSession {
|
||||
public:
|
||||
virtual void Begin();
|
||||
virtual void Commit();
|
||||
virtual void Rollback();
|
||||
|
||||
virtual String Savepoint();
|
||||
virtual void RollbackTo(const String& savepoint);
|
||||
|
||||
virtual bool IsOpen() const;
|
||||
|
||||
virtual Vector<String> EnumUsers();
|
||||
virtual Vector<String> EnumDatabases();
|
||||
virtual Vector<String> EnumTables(String database);
|
||||
virtual Vector<String> EnumViews(String database);
|
||||
virtual Vector<String> EnumSequences(String database);
|
||||
virtual Vector<String> EnumPrimaryKeys(String database, String table);
|
||||
virtual String EnumRowID(String database, String table);
|
||||
|
||||
virtual RunScript GetRunScript() const { return &ODBCPerformScript; }
|
||||
|
||||
protected:
|
||||
virtual SqlConnection *CreateConnection();
|
||||
|
||||
private:
|
||||
friend class ODBCConnection;
|
||||
HENV henv;
|
||||
HDBC hdbc;
|
||||
HSTMT hstmt;
|
||||
String user;
|
||||
int tlevel;
|
||||
ODBCConnection *current;
|
||||
|
||||
void FlushConnections();
|
||||
bool IsOk(SQLRETURN ret);
|
||||
|
||||
public:
|
||||
bool Connect(const char *cs);
|
||||
void Close();
|
||||
|
||||
ODBCSession();
|
||||
~ODBCSession();
|
||||
};
|
||||
|
||||
END_UPP_NAMESPACE
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -3,6 +3,8 @@ uses
|
|||
|
||||
library(WIN32) odbc32;
|
||||
|
||||
library(!WIN32) odbc;
|
||||
|
||||
file
|
||||
ODBC.h,
|
||||
ODBC.cpp;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue