/********** wxDbConnectInf Constructor - form 1 **********/
wxDbConnectInf::wxDbConnectInf()
{
+ Henv = 0;
+ freeHenvOnDestroy = FALSE;
+
Initialize();
} // Constructor
/********** wxDbConnectInf Constructor - form 2 **********/
-wxDbConnectInf::wxDbConnectInf(HENV Henv, const wxString &Dsn, const wxString &UserID,
- const wxString &Password, const wxString &DefaultDir,
- const wxString &FileType, const wxString &Description)
+wxDbConnectInf::wxDbConnectInf(HENV henv, const wxString &dsn, const wxString &userID,
+ const wxString &password, const wxString &defaultDir,
+ const wxString &fileType, const wxString &description)
{
- wxASSERT(Dsn.Length());
+ wxASSERT(dsn.Length());
+
+ Henv = 0;
+ freeHenvOnDestroy = FALSE;
Initialize();
- if (Henv)
- SetHenv(Henv);
+ if (henv)
+ SetHenv(henv);
else
AllocHenv();
- SetDsn(Dsn);
- SetUserID(UserID);
- SetPassword(Password);
- SetDescription(Description);
- SetFileType(FileType);
- SetDefaultDir(DefaultDir);
+ SetDsn(dsn);
+ SetUserID(userID);
+ SetPassword(password);
+ SetDescription(description);
+ SetFileType(fileType);
+ SetDefaultDir(defaultDir);
} // wxDbConnectInf Constructor
{
freeHenvOnDestroy = FALSE;
+ if (freeHenvOnDestroy && Henv)
+ FreeHenv();
+
Henv = 0;
Dsn[0] = 0;
Uid[0] = 0;
/********** wxDbColFor Constructor **********/
wxDbColFor::wxDbColFor()
+{
+ Initialize();
+} // wxDbColFor::wxDbColFor()
+
+
+wxDbColFor::~wxDbColFor()
+{
+} // wxDbColFor::~wxDbColFor()
+
+
+/********** wxDbColFor::Initialize() **********/
+void wxDbColFor::Initialize()
{
s_Field.Empty();
int i;
i_dbDataType = 0;
i_sqlDataType = 0;
Format(1,DB_DATA_TYPE_VARCHAR,0,0,0); // the Function that does the work
-} // wxDbColFor::wxDbColFor()
-
-
-wxDbColFor::~wxDbColFor()
-{
-} // wxDbColFor::~wxDbColFor()
+} // wxDbColFor::Initialize()
/********** wxDbColFor::Format() **********/
} // wxDbColFor::Format()
+
/********** wxDbColInf Constructor **********/
wxDbColInf::wxDbColInf()
+{
+ Initialize();
+} // wxDbColInf::wxDbColInf()
+
+
+/********** wxDbColInf Destructor ********/
+wxDbColInf::~wxDbColInf()
+{
+ if (pColFor)
+ delete pColFor;
+ pColFor = NULL;
+} // wxDbColInf::~wxDbColInf()
+
+
+bool wxDbColInf::Initialize()
{
catalog[0] = 0;
schema[0] = 0;
FkCol = 0;
FkTableName[0] = 0;
pColFor = NULL;
-} // wxDbColInf::wxDbColInf()
-
-/********** wxDbColInf Destructor ********/
-wxDbColInf::~wxDbColInf()
-{
- if (pColFor)
- delete pColFor;
- pColFor = NULL;
-} // wxDbColInf::~wxDbColInf()
+ return TRUE;
+} // wxDbColInf::Initialize()
/********** wxDbTableInf Constructor ********/
wxDbTableInf::wxDbTableInf()
{
- tableName[0] = 0;
- tableType[0] = 0;
- tableRemarks[0] = 0;
- numCols = 0;
- pColInf = NULL;
+ Initialize();
} // wxDbTableInf::wxDbTableInf()
} // wxDbTableInf::~wxDbTableInf()
+bool wxDbTableInf::Initialize()
+{
+ tableName[0] = 0;
+ tableType[0] = 0;
+ tableRemarks[0] = 0;
+ numCols = 0;
+ pColInf = NULL;
+
+ return TRUE;
+} // wxDbTableInf::Initialize()
+
+
/********** wxDbInf Constructor *************/
wxDbInf::wxDbInf()
{
- catalog[0] = 0;
- schema[0] = 0;
- numTables = 0;
- pTableInf = NULL;
-} // wxDbInf::wxDbFor()
+ Initialize();
+} // wxDbInf::wxDbInf()
/********** wxDbInf Destructor *************/
} // wxDbInf::~wxDbInf()
+/********** wxDbInf::Initialize() *************/
+bool wxDbInf::Initialize()
+{
+ catalog[0] = 0;
+ schema[0] = 0;
+ numTables = 0;
+ pTableInf = NULL;
+
+ return TRUE;
+} // wxDbInf::Initialize()
+
+
/********** wxDb Constructors **********/
-wxDb::wxDb(HENV &aHenv, bool FwdOnlyCursors)
+wxDb::wxDb(const HENV &aHenv, bool FwdOnlyCursors)
{
// Copy the HENV into the db class
henv = aHenv;
fwdOnlyCursors = FwdOnlyCursors;
- Initialize();
+
+ initialize();
} // wxDb::wxDb()
-/********** wxDb::Initialize() **********/
-void wxDb::Initialize()
+/********** PRIVATE! wxDb::initialize PRIVATE! **********/
+/********** wxDb::initialize() **********/
+void wxDb::initialize()
/*
* Private member function that sets all wxDb member variables to
* known values at creation of the wxDb
nTables = 0;
dbmsType = dbmsUNIDENTIFIED;
- wxStrcpy(sqlState,wxT(""));
- wxStrcpy(errorMsg,wxT(""));
+ wxStrcpy(sqlState,wxEmptyString);
+ wxStrcpy(errorMsg,wxEmptyString);
nativeError = cbErrorMsg = 0;
for (i = 0; i < DB_MAX_ERROR_HISTORY; i++)
- wxStrcpy(errorList[i], wxT(""));
+ wxStrcpy(errorList[i], wxEmptyString);
// Init typeInf structures
typeInfVarchar.TypeName.Empty();
// Mark database as not open as of yet
dbIsOpen = FALSE;
-} // wxDb::Initialize()
+} // wxDb::initialize()
/********** PRIVATE! wxDb::convertUserID PRIVATE! **********/
If using Intersolv branded ODBC drivers, this is the place where you would substitute
your branded driver license information
- SQLSetConnectOption(hdbc, 1041, (UDWORD) wxT(""));
- SQLSetConnectOption(hdbc, 1042, (UDWORD) wxT(""));
+ SQLSetConnectOption(hdbc, 1041, (UDWORD) wxEmptyString);
+ SQLSetConnectOption(hdbc, 1042, (UDWORD) wxEmptyString);
*/
// Mark database as open
} // wxDb::Open()
+bool wxDb::Open(wxDbConnectInf *dbConnectInf)
+{
+ return Open(dbConnectInf->GetDsn(), dbConnectInf->GetUserID(),
+ dbConnectInf->GetPassword());
+} // wxDb::Open()
+
+
bool wxDb::Open(wxDb *copyDb)
{
dsn = copyDb->GetDatasourceName();
If using Intersolv branded ODBC drivers, this is the place where you would substitute
your branded driver license information
- SQLSetConnectOption(hdbc, 1041, (UDWORD) wxT(""));
- SQLSetConnectOption(hdbc, 1042, (UDWORD) wxT(""));
+ SQLSetConnectOption(hdbc, 1041, (UDWORD) wxEmptyString);
+ SQLSetConnectOption(hdbc, 1042, (UDWORD) wxEmptyString);
*/
// Mark database as open
if (!colInf)
break;
// Mark the end of the array
- wxStrcpy(colInf[noCols].tableName,wxT(""));
- wxStrcpy(colInf[noCols].colName,wxT(""));
+ wxStrcpy(colInf[noCols].tableName,wxEmptyString);
+ wxStrcpy(colInf[noCols].colName,wxEmptyString);
colInf[noCols].sqlDataType = 0;
}
// Loop through each table name
if (!colInf)
break;
// Mark the end of the array
- wxStrcpy(colInf[noCols].tableName, wxT(""));
- wxStrcpy(colInf[noCols].colName, wxT(""));
+ wxStrcpy(colInf[noCols].tableName, wxEmptyString);
+ wxStrcpy(colInf[noCols].colName, wxEmptyString);
colInf[noCols].sqlDataType = 0;
}
wxDbColInf *colInf = new wxDbColInf[noCols+1];
// Mark the end of the array
- wxStrcpy(colInf[noCols].tableName, wxT(""));
- wxStrcpy(colInf[noCols].colName, wxT(""));
+ wxStrcpy(colInf[noCols].tableName, wxEmptyString);
+ wxStrcpy(colInf[noCols].colName, wxEmptyString);
colInf[noCols].sqlDataType = 0;
// Merge ...
if (!colInf)
break;
// Mark the end of the array
- wxStrcpy(colInf[noCols].tableName, wxT(""));
- wxStrcpy(colInf[noCols].colName, wxT(""));
+ wxStrcpy(colInf[noCols].tableName, wxEmptyString);
+ wxStrcpy(colInf[noCols].colName, wxEmptyString);
colInf[noCols].sqlDataType = 0;
}
pList->Uid = pDbConfig->GetUserID();
pList->AuthStr = pDbConfig->GetPassword();
- pList->PtrDb = new wxDb((HENV)pDbConfig->GetHenvAddress(),FwdOnlyCursors);
+ pList->PtrDb = new wxDb(pDbConfig->GetHenv(), FwdOnlyCursors);
bool opened = FALSE;