32 #include "api_database.h"
33 #include "db_command.h"
34 #include "db_transaction.h"
43 class DBConnectionProvider;
44 class DBConnection_Impl;
77 {
return begin_arg(format, type).set_arg(arg1).get_result(); }
80 template <
class Arg1,
class Arg2>
82 {
return begin_arg(format, type).set_arg(arg1).set_arg(arg2).get_result(); }
85 template <
class Arg1,
class Arg2,
class Arg3>
87 {
return begin_arg(format, type).set_arg(arg1).set_arg(arg2).set_arg(arg3).get_result(); }
90 template <
class Arg1,
class Arg2,
class Arg3,
class Arg4>
92 {
return begin_arg(format, type).set_arg(arg1).set_arg(arg2).set_arg(arg3).set_arg(arg4).get_result(); }
95 template <
class Arg1,
class Arg2,
class Arg3,
class Arg4,
class Arg5>
97 {
return begin_arg(format, type).set_arg(arg1).set_arg(arg2).set_arg(arg3).set_arg(arg4).set_arg(arg5).get_result(); }
100 template <
class Arg1,
class Arg2,
class Arg3,
class Arg4,
class Arg5,
class Arg6>
102 {
return begin_arg(format, type).set_arg(arg1).set_arg(arg2).set_arg(arg3).set_arg(arg4).set_arg(arg5).set_arg(arg6).get_result(); }
105 template <
class Arg1,
class Arg2,
class Arg3,
class Arg4,
class Arg5,
class Arg6,
class Arg7>
107 {
return begin_arg(format, type).set_arg(arg1).set_arg(arg2).set_arg(arg3).set_arg(arg4).set_arg(arg5).set_arg(arg6).set_arg(arg7).get_result(); }
116 std::string execute_scalar_string(
DBCommand &command);
119 int execute_scalar_int(
DBCommand &command);
122 void execute_non_query(
DBCommand &command);
135 cmd.set_input_parameter_string(i, arg);
142 cmd.set_input_parameter_string(i, arg);
149 cmd.set_input_parameter_bool(i, arg);
156 cmd.set_input_parameter_int(i, arg);
163 cmd.set_input_parameter_double(i, arg);
170 cmd.set_input_parameter_datetime(i, arg);
177 cmd.set_input_parameter_binary(i, arg);
194 return DBArg(*
this, format, type);
197 std::shared_ptr<DBConnection_Impl> impl;
DBCommand create_command(const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5, DBCommand::Type type=DBCommand::sql_statement)
Create database command with 5 input arguments.
Definition: db_connection.h:96
Database command.
Definition: db_command.h:46
Database reader.
Definition: db_reader.h:47
Database transaction.
Definition: db_transaction.h:44
Date/Time class.
Definition: datetime.h:44
DBArg & set_arg(const char *arg)
Definition: db_connection.h:140
DBCommand create_command(const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, DBCommand::Type type=DBCommand::sql_statement)
Create database command with 3 input arguments.
Definition: db_connection.h:86
Database connection provider.
Definition: db_connection_provider.h:46
DBArg(DBConnection &db, const std::string &format, DBCommand::Type type)
Definition: db_connection.h:131
DBArg & set_arg(const DataBuffer &arg)
Definition: db_connection.h:175
DBCommand create_command(const std::string &format, Arg1 arg1, DBCommand::Type type=DBCommand::sql_statement)
Create database command with 1 input argument.
Definition: db_connection.h:76
Database connection.
Definition: db_connection.h:47
DBCommand create_command(const std::string &format, Arg1 arg1, Arg2 arg2, DBCommand::Type type=DBCommand::sql_statement)
Create database command with 2 input arguments.
Definition: db_connection.h:81
Type
Definition: db_command.h:51
Definition: db_command.h:54
DBCommand create_command(const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5, Arg6 arg6, DBCommand::Type type=DBCommand::sql_statement)
Create database command with 6 input arguments.
Definition: db_connection.h:101
DBCommand create_command(const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5, Arg6 arg6, Arg7 arg7, DBCommand::Type type=DBCommand::sql_statement)
Create database command with 7 input arguments.
Definition: db_connection.h:106
Type
Definition: db_transaction.h:49
DBCommand get_result() const
Definition: db_connection.h:182
DBArg & set_arg(int arg)
Definition: db_connection.h:154
DBArg & set_arg(bool arg)
Definition: db_connection.h:147
DBCommand create_command(const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, DBCommand::Type type=DBCommand::sql_statement)
Create database command with 4 input arguments.
Definition: db_connection.h:91
DBArg & set_arg(double arg)
Definition: db_connection.h:161
Definition: db_transaction.h:51
General purpose data buffer.
Definition: databuffer.h:43
DBArg & set_arg(const std::string &arg)
Definition: db_connection.h:133
DBArg & set_arg(const DateTime &arg)
Definition: db_connection.h:168