53 #ifndef vtkSQLDatabase_h 54 #define vtkSQLDatabase_h 56 #include "vtkIOSQLModule.h" 69 #define VTK_SQL_FEATURE_TRANSACTIONS 1000 70 #define VTK_SQL_FEATURE_QUERY_SIZE 1001 71 #define VTK_SQL_FEATURE_BLOB 1002 72 #define VTK_SQL_FEATURE_UNICODE 1003 73 #define VTK_SQL_FEATURE_PREPARED_QUERIES 1004 74 #define VTK_SQL_FEATURE_NAMED_PLACEHOLDERS 1005 75 #define VTK_SQL_FEATURE_POSITIONAL_PLACEHOLDERS 1006 76 #define VTK_SQL_FEATURE_LAST_INSERT_ID 1007 77 #define VTK_SQL_FEATURE_BATCH_OPERATIONS 1008 78 #define VTK_SQL_FEATURE_TRIGGERS 1009 // supported 82 #define VTK_SQL_DEFAULT_COLUMN_SIZE 32 96 virtual bool Open(
const char* password) = 0;
101 virtual void Close() = 0;
106 virtual bool IsOpen() = 0;
116 virtual bool HasError() = 0;
125 virtual const char* GetLastErrorText() = 0;
130 virtual const char* GetDatabaseType() = 0;
145 virtual bool IsSupported(
int vtkNotUsed(feature)) {
return false; }
227 static void RegisterCreateFromURLCallback(CreateFunction callback);
228 static void UnRegisterCreateFromURLCallback(CreateFunction callback);
229 static void UnRegisterAllCreateFromURLCallbacks();
251 virtual bool ParseURL(
const char*
url ) = 0;
261 class vtkCallbackVector;
262 static vtkCallbackVector* Callbacks;
267 #endif // vtkSQLDatabase_h Wrapper around std::string to keep symbols short.
abstract base class for most VTK objects
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual bool IsSupported(int vtkNotUsed(feature))
Return whether a feature is supported by the database.
a vtkAbstractArray subclass for strings
represent an SQL database schema
virtual vtkStdString GetTablePreamble(bool)
Return the SQL string with the syntax of the preamble following a "CREATE TABLE" SQL statement.
maintain a connection to an sql database
a simple class to control print indentation
executes an sql query and retrieves results