2.3. The Nullable Class


Figure 2-1. class Nullable

namespace Oracle
{
    class Nullable
    {
        public:
            // constructors/destructor
            Nullable();
            virtual ~Nullable() {};

            // implementors
            void set_null();

            // accessors
            virtual bool is_null() const;
            virtual sb2 indicator() const;
            virtual string str() const;
            virtual string str(const string&) const;
            virtual string str(const string&, const Format&) const;
	    virtual string sql_str() const;
            virtual long lng() const;
            virtual long lng(const long) const;
            virtual double dbl() const;
            virtual double dbl(const double) const;
            virtual int sqlt() const;
            virtual int maxsize() const;

        protected:
            // implementors
            virtual void* data() const;
            virtual sb2* ind_addr();

        friend class Stmt;
        friend class Select_Stmt;
    };

    ostream& operator<<(ostream&, const Nullable&);
}

2.3.1. Public Member Functions

2.3.1.1. Constructors

Nullable(void);

The constructor takes no arguments since a Nullable object cannot take a value.