From: George Tasker Date: Tue, 10 Apr 2001 10:43:51 +0000 (+0000) Subject: Added a param to ::Open() to allow the programmer to specify whether opening the... X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/1454d4e6599bbd18086cdf0cf1b06c2b9004fe3a?ds=inline 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 --- diff --git a/docs/latex/wx/db.tex b/docs/latex/wx/db.tex index a798d8213c..12149a8936 100644 --- a/docs/latex/wx/db.tex +++ b/docs/latex/wx/db.tex @@ -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 diff --git a/include/wx/dbtable.h b/include/wx/dbtable.h index 2e98f16b35..f402ea5368 100644 --- a/include/wx/dbtable.h +++ b/include/wx/dbtable.h @@ -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; } diff --git a/src/common/dbtable.cpp b/src/common/dbtable.cpp index a1f0a15eaf..107779f0b9 100644 --- a/src/common/dbtable.cpp +++ b/src/common/dbtable.cpp @@ -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'))