Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00031
00032 #pragma once
00033
00034 #include "api_database.h"
00035
00036 class CL_DBValue;
00037 class CL_DateTime;
00038 class CL_DataBuffer;
00039 class CL_DBConnection;
00040 class CL_DBReaderProvider;
00041 class CL_DBReader_Impl;
00042
00046 class CL_API_DATABASE CL_DBReader
00047 {
00050 public:
00052 CL_DBReader();
00053
00057 CL_DBReader(const CL_SharedPtr<CL_DBReader_Impl> &impl);
00058
00059 ~CL_DBReader();
00061
00064 public:
00066 int get_column_count() const;
00067
00069 CL_String get_column_name(int index) const;
00070
00072 int get_name_index(const CL_StringRef &name) const;
00073
00075 CL_DBValue get_column_value(int index) const;
00076
00078 CL_DBValue get_column_value(const CL_StringRef &name) const;
00079
00081 CL_String get_column_string(int index) const;
00082
00084 bool get_column_bool(int index) const;
00085
00087 int get_column_int(int index) const;
00088
00090 double get_column_double(int index) const;
00091
00093 CL_DateTime get_column_datetime(int index) const;
00094
00096 CL_DataBuffer get_column_binary(int index) const;
00097
00099 CL_String get_column_string(const CL_StringRef &column_name) const;
00100
00102 bool get_column_bool(const CL_StringRef &column_name) const;
00103
00105 int get_column_int(const CL_StringRef &column_name) const;
00106
00108 double get_column_double(const CL_StringRef &column_name) const;
00109
00111 CL_DateTime get_column_datetime(const CL_StringRef &column_name) const;
00112
00114 CL_DataBuffer get_column_binary(const CL_StringRef &column_name) const;
00115
00117 CL_DBReaderProvider *get_provider();
00119
00122 public:
00125 bool retrieve_row();
00126
00128 void close();
00130
00133 private:
00134 CL_SharedPtr<CL_DBReader_Impl> impl;
00135
00137 };
00138