KanoopDatabaseQt 1.1.1
Qt database abstraction library
Loading...
Searching...
No Matches
sqlparser.h
1#ifndef SQLPARSER_H
2#define SQLPARSER_H
3#include <QStringList>
4
5/** @brief Parses a multi-statement SQL string into individual SQL statements. */
7{
8public:
9 /** @brief Construct a parser and parse the given SQL string into individual statements.
10 * @param sql The SQL string potentially containing multiple semicolon-delimited statements.
11 */
12 SqlParser(const QString& sql);
13
14 /** @brief Get the list of parsed SQL statements.
15 * @return The list of individual SQL statements.
16 */
17 QStringList statements() const { return _statements; }
18
19 /** @brief Return true if parsing completed successfully.
20 * @return true if the SQL was parsed without error.
21 */
22 bool isValid() const { return _valid; }
23
24private:
25 void parse(const QString& sql);
26 void startNewStatement();
27
28 QStringList _statements;
29 bool _valid;
30
31 QStringList _working;
32};
33
34#endif // SQLPARSER_H
Parses a multi-statement SQL string into individual SQL statements.
Definition sqlparser.h:7
SqlParser(const QString &sql)
Construct a parser and parse the given SQL string into individual statements.
QStringList statements() const
Get the list of parsed SQL statements.
Definition sqlparser.h:17
bool isValid() const
Return true if parsing completed successfully.
Definition sqlparser.h:22