00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef LIBLOOKDB_DBFIELD_H
00019 #define LIBLOOKDB_DBFIELD_H
00020
00021
00022
00023 #include "lookdblibrary.h"
00024 #include "lookdbinterface.h"
00025 #include "lkstring.h"
00026 #include "lkinteger.h"
00027 #include "lkmoney.h"
00028 #include "lkfloat.h"
00029 #include "lkdatetime.h"
00030 #include "lknumeric.h"
00031 #include "lkrawdata.h"
00032
00033 namespace look {
00034
00036
00043 class LOOKDBLIBRARY_DLL DbField
00044 {
00045 public:
00046 DbField(LOOK_STMT theStmt, int theColumn);
00047 virtual ~DbField();
00048
00049 const LookTypeBase* GetValue( void ) const;
00050 LookString GetAsString( void ) const;
00051
00052
00053 LookInteger GetInteger( void ) const;
00054 LookMoney GetMoney( void ) const;
00055 LookDateTime GetDateTime( void ) const;
00056 LookFloat GetFloat( void ) const;
00057 LookNumeric GetNumeric( void ) const;
00058 LookRawData GetRawData( void ) const;
00059
00060 bool IsNull() const;
00061
00062 static void SetFixEmptyStrings( bool theFlag )
00063 {
00064 itFixesEmptyStrings = theFlag;
00065 }
00066
00067 static bool SetFixEmptyStringsAuto( void );
00068
00069 private:
00070 LookString itsFieldName;
00071 bool itIsNull;
00072 LookTypeBase* itsValue;
00073
00074 static bool itFixesEmptyStrings;
00075 };
00076
00077
00078 }
00079 #endif // DbField_H