Added a param to ::Open() to allow the programmer to specify whether opening the table should check if table exists
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
04a429cb8a
commit
1454d4e659
@ -3110,7 +3110,7 @@ wxDbTable instance that would modify (insert/delete/update) the table's data.
|
||||
|
||||
\membersection{wxDbTable::Open}\label{wxdbtableopen}
|
||||
|
||||
\func{bool }{Open}{\param{bool }{checkPrivileges=FALSE}}
|
||||
\func{bool }{Open}{\param{bool }{checkPrivileges=FALSE}, \param{bool }{checkTableExists=TRUE}}
|
||||
|
||||
Every wxDbTable instance must be opened before it can be used. This function
|
||||
checks for the existence of the requested table, binds columns, creates required
|
||||
@ -3124,6 +3124,9 @@ row in the datasource.
|
||||
whether the current connected user has at least SELECT privileges to access the
|
||||
table to which they are trying to open. Default is FALSE.}
|
||||
|
||||
\docparam{checkTableExists}{Indicates whether the Open() function should check
|
||||
whether the table exists in the database or not before opening it. Default is TRUE.}
|
||||
|
||||
\wxheading{Remarks}
|
||||
|
||||
If the function returns a FALSE value due to the table not existing, a log
|
||||
|
@ -205,7 +205,7 @@ public:
|
||||
|
||||
virtual ~wxDbTable();
|
||||
|
||||
bool Open(bool checkPrivileges=FALSE);
|
||||
bool Open(bool checkPrivileges=FALSE, bool checkTableExists=TRUE);
|
||||
bool CreateTable(bool attemptDrop=TRUE);
|
||||
bool DropTable(void);
|
||||
bool CreateIndex(const wxString &idxName, bool unique, int noIdxCols,
|
||||
@ -215,7 +215,7 @@ public:
|
||||
// Accessors
|
||||
|
||||
// The member variables returned by these accessors are all
|
||||
// set when the wxDbTable instance is createand cannot be
|
||||
// set when the wxDbTable instance is created and cannot be
|
||||
// changed, hence there is no corresponding SetXxxx function
|
||||
wxDb *GetDb() { return pDb; }
|
||||
const wxString &GetTableName() { return tableName; }
|
||||
@ -223,7 +223,6 @@ public:
|
||||
const wxString &GetTablePath() { return tablePath; }
|
||||
|
||||
int GetNumberOfColumns() { return noCols; } // number of "defined" columns for this wxDbTable instance
|
||||
|
||||
|
||||
const wxString &GetFromClause() { return from; }
|
||||
const wxString &GetOrderByClause() { return orderBy; }
|
||||
|
@ -694,7 +694,7 @@ bool wxDbTable::query(int queryType, bool forUpdate, bool distinct, const wxStri
|
||||
|
||||
|
||||
/********** wxDbTable::Open() **********/
|
||||
bool wxDbTable::Open(bool checkPrivileges)
|
||||
bool wxDbTable::Open(bool checkPrivileges, bool checkTableExists)
|
||||
{
|
||||
if (!pDb)
|
||||
return FALSE;
|
||||
@ -705,7 +705,7 @@ bool wxDbTable::Open(bool checkPrivileges)
|
||||
|
||||
s.Empty();
|
||||
// Verify that the table exists in the database
|
||||
if (!pDb->TableExists(tableName,/*pDb->GetUsername()*/NULL,tablePath))
|
||||
if (checkTableExists && !pDb->TableExists(tableName,/*pDb->GetUsername()*/NULL,tablePath))
|
||||
{
|
||||
s = wxT("Table/view does not exist in the database");
|
||||
if ( *(pDb->dbInf.accessibleTables) == wxT('Y'))
|
||||
|
Loading…
Reference in New Issue
Block a user