summaryrefslogtreecommitdiff
path: root/libodbcpp/odbc-param_fwd.h
diff options
context:
space:
mode:
Diffstat (limited to 'libodbcpp/odbc-param_fwd.h')
-rw-r--r--libodbcpp/odbc-param_fwd.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/libodbcpp/odbc-param_fwd.h b/libodbcpp/odbc-param_fwd.h
new file mode 100644
index 0000000..88c3dae
--- /dev/null
+++ b/libodbcpp/odbc-param_fwd.h
@@ -0,0 +1,29 @@
+#ifndef ODBC_PARAM_FWD_H
+#define ODBC_PARAM_FWD_H
+
+#include <sqlext.h>
+#include "odbc-bind.h"
+
+namespace ODBC {
+ class Command;
+ class Param : public virtual Bind {
+ public:
+ Param();
+ Param(Command *, unsigned int idx);
+ void bind() const;
+
+ virtual SQLSMALLINT stype() const = 0; // The SQL type ID
+ virtual SQLINTEGER dp() const = 0; // The decimal place count
+ virtual const void * dataAddress() const = 0; // The address of the data
+
+ protected:
+ friend class Column;
+ mutable Command * paramCmd;
+ mutable unsigned int paramIdx;
+ mutable bool paramBound; // Has SqlBind(...) been called since last change of address?
+ SQLLEN dataLength;
+ };
+}
+
+#endif
+