VTK
vtkPostgreSQLQuery.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkPostgreSQLQuery.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
15/*-------------------------------------------------------------------------
16 Copyright 2008 Sandia Corporation.
17 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18 the U.S. Government retains certain rights in this software.
19-------------------------------------------------------------------------*/
39#ifndef vtkPostgreSQLQuery_h
40#define vtkPostgreSQLQuery_h
41
42#include "vtkIOPostgreSQLModule.h" // For export macro
43#include "vtkSQLQuery.h"
44
46class vtkVariant;
47class vtkVariantArray;
48class vtkPostgreSQLQueryPrivate;
49
50class VTKIOPOSTGRESQL_EXPORT vtkPostgreSQLQuery : public vtkSQLQuery
51{
52public:
54 void PrintSelf( ostream& os, vtkIndent indent );
56
62 bool Execute();
63
68
72 const char* GetFieldName( int i );
73
77 int GetFieldType( int i );
78
82 bool NextRow();
83
87 bool HasError();
88
90
97
102
106 const char* GetLastErrorText();
107
111 virtual vtkStdString EscapeString( vtkStdString s, bool addSurroundingQuotes = true );
112
118
119protected:
122
123 vtkSetStringMacro(LastErrorText);
124
125 bool IsColumnBinary(int whichColumn);
126 const char *GetColumnRawData(int whichColumn);
127
131
132 vtkPostgreSQLQueryPrivate *QueryInternals;
133
135
137
138private:
139 vtkPostgreSQLQuery( const vtkPostgreSQLQuery& ) VTK_DELETE_FUNCTION;
140 void operator = ( const vtkPostgreSQLQuery& ) VTK_DELETE_FUNCTION;
141};
142
143#endif // vtkPostgreSQLQuery_h
144
a simple class to control print indentation
Definition: vtkIndent.h:40
maintain a connection to a PostgreSQL database
vtkSQLQuery implementation for PostgreSQL databases
bool IsColumnBinary(int whichColumn)
int GetFieldType(int i)
Return the type of the field, using the constants defined in vtkType.h.
int GetNumberOfFields()
The number of fields in the query result.
virtual vtkStdString EscapeString(vtkStdString s, bool addSurroundingQuotes=true)
Escape a string for inclusion into an SQL query.
const char * GetColumnRawData(int whichColumn)
bool NextRow()
Advance row, return false if past end.
vtkPostgreSQLQueryPrivate * QueryInternals
bool HasError()
Return true if there is an error on the current query.
int GetNumberOfRows()
Unlike some databases, Postgres can tell you right away how many rows are in the results of your quer...
bool Execute()
Execute the query.
bool BeginTransaction()
Begin, abort (roll back), or commit a transaction.
const char * GetFieldName(int i)
Return the name of the specified query field.
vtkVariant DataValue(vtkIdType c)
Return data in current row, field c.
bool RollbackTransaction()
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
const char * GetLastErrorText()
Get the last error text from the query.
static vtkPostgreSQLQuery * New()
executes an sql query and retrieves results
Definition: vtkSQLQuery.h:75
Wrapper around std::string to keep symbols short.
Definition: vtkStdString.h:49
An array holding vtkVariants.
A atomic type representing the union of many types.
Definition: vtkVariant.h:76
int vtkIdType
Definition: vtkType.h:287