libdballe  7.21
mysql/datav6.h
1 #ifndef DBALLE_DB_V6_MYSQL_V6_DATA_H
2 #define DBALLE_DB_V6_MYSQL_V6_DATA_H
3 
4 #include <dballe/db/v6/datav6.h>
5 #include <dballe/sql/fwd.h>
6 
7 namespace dballe {
8 struct Record;
9 
10 namespace db {
11 namespace v6 {
12 namespace mysql {
13 struct DB;
14 
18 class MySQLDataV6 : public v6::DataV6
19 {
20 protected:
23 
24 public:
26  MySQLDataV6(const MySQLDataV6&) = delete;
27  MySQLDataV6(const MySQLDataV6&&) = delete;
28  MySQLDataV6& operator=(const MySQLDataV6&) = delete;
29  ~MySQLDataV6();
30 
31  void insert(dballe::sql::Transaction& t, v6::bulk::InsertV6& vars, UpdateMode update_mode=UPDATE) override;
32  void remove(const v6::QueryBuilder& qb) override;
33  void dump(FILE* out) override;
34 };
35 
36 }
37 }
38 }
39 }
40 #endif
dballe::sql::MySQLConnection & conn
DB connection.
Definition: mysql/datav6.h:22
Attribute table management used by the db module.
Forward declarations for public dballe/sql names.
Copyright (C) 2008–2010 ARPA-SIM urpsim@smr.arpa.emr.it
Definition: cmdline.h:17
A RAII transaction interface.
Definition: sql.h:133
Input for a bulk insert of a lot of variables sharing the same context information.
Definition: datav6.h:107
Build SQL queries for V6 databases.
Definition: v6/qbuilder.h:14
void dump(FILE *out) override
Dump the entire contents of the table to an output stream.
Precompiled query to manipulate the data table.
Definition: mysql/datav6.h:18
void insert(dballe::sql::Transaction &t, v6::bulk::InsertV6 &vars, UpdateMode update_mode=UPDATE) override
Bulk variable insert.
Database connection.
Definition: mysql.h:125
Precompiled query to manipulate the data table.
Definition: datav6.h:31