⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 occidata.h

📁 oci函数批量插入数据
💻 H
📖 第 1 页 / 共 2 页
字号:
   // divide and assign
  Number& operator/=(const Number &a) ;
  // Modulo and assign
  Number& operator%=(const Number &a) ;
  // casting operators
  operator long() const;
  operator int() const;
  operator short() const;
  operator char() const;
  operator signed char() const;
  operator unsigned long() const;
  operator unsigned int() const;
  operator unsigned short() const;
  operator unsigned char() const;
  operator long double() const;
  operator double() const;
  operator float() const;
  // Decimal shift
  const Number shift(int val) const ;
  // Integer Power
  const Number intPower(int val) const ;
  const Number ceil() const ;
  const Number floor() const ;
  const Number squareroot() const ;
  const int sign() const ;
  // conversion routines
  //  Format Number and return as a OCCI_STD_NAMESPACE::string
  OCCI_STD_NAMESPACE::string toText(const Environment *envp,
                const OCCI_STD_NAMESPACE::string &fmt,const OCCI_STD_NAMESPACE::string &nlsParam="") const
                ;
  // Create an Number from formatted text
  void fromText(const Environment *envp,const OCCI_STD_NAMESPACE::string &number,
                const OCCI_STD_NAMESPACE::string &fmt, const OCCI_STD_NAMESPACE::string &nlsParam = "")
               ;
  void fromBytes(const Bytes &s) ;
  Bytes toBytes() const;
  // truncate digits
  const Number trunc(int decplace) const ;
   // round to the decplace place.
  const Number round(int decplace) const ;
  // returns an Number with digits decimal digits
  const Number prec(int digits) const ;
  const Number sin() const ;
  const Number cos() const ;
  const Number tan() const ;
  const Number hypSin() const ;
  const Number hypCos() const ;
  const Number hypTan() const ;
  const Number arcSin() const ;
  const Number arcCos() const ;
  const Number arcTan() const ;
  const Number arcTan2(const Number &val) const;
  const Number power(const Number &val) const;
  const Number exp() const ;
  const Number ln() const ;
  const Number log(const Number &val) const;
  bool isNull() const;
  void setNull();
 private:
  /* Private constructor for constructing number from methods inside  */
  Number(const OCINumber &result);
  OCINumber getOCINumber() const;

  OCINumber data;
  /* a flag to indicate if the  Number  is null */
  bool numberIsNull;
  void *numberExt;

  // a >= b
  friend bool operator>=(const Number &a, const Number &b);
  // a < = b
  friend bool operator<=(const Number &a, const Number &b);
  // a > b
  friend bool operator>(const Number &a, const Number &b);
  // a < b
  friend bool operator<(const Number &a, const Number &b);

  friend class IntervalDS;
  friend class IntervalYM;
  friend const IntervalYM operator*(const IntervalYM &a,
  const Number& factor) ;
  friend const IntervalDS operator*(const IntervalDS &a,
  const Number& factor) ;
  friend const IntervalYM operator/(const IntervalYM &a,
  const Number &factor) ;
  friend const IntervalDS operator/(const IntervalDS &a,
  const Number &factor) ;
  friend class ResultSetImpl;
    friend class StatementImpl;
  friend class AnyDataImpl;
  friend void getVector(const AnyData &any, OCCI_STD_NAMESPACE::vector<Number> &vect);
  friend void setVector(AnyData &any, 
  const OCCI_STD_NAMESPACE::vector<Number> &vect) ;
  friend Number MetaData::getNumber(MetaData::AttrId attrid)          const ;
  friend void getVector(Statement  *stmt, unsigned int paramIndex,
  OCCI_STD_NAMESPACE::vector<Number> &vect) ;
  friend void setVector(Statement *stmt, unsigned int paramIndex,
  const OCCI_STD_NAMESPACE::vector<Number> &vect, const OCCI_STD_NAMESPACE::string &sqltype);
  friend void getVector(ResultSet  *rs, unsigned int colIndex,
  OCCI_STD_NAMESPACE::vector<Number> &vect);

};

class Date
{
 public:

  // Constructors
  Date();
  Date(const Date &a);
  Date(const Environment *envp,int year = 1,unsigned int month = 1,
           unsigned int day = 1,unsigned  int hour = 0,
           unsigned int minute = 0, unsigned int seconds = 0);
  ~Date();
  // Methods

  void setDate(int year = 1,unsigned int month = 1,unsigned int day = 1,
               unsigned int hour = 0,unsigned int minute = 0,
               unsigned int seconds = 0);
  void getDate(int &year,unsigned int &month,unsigned int &day,
           unsigned int &hour ,unsigned int &min ,unsigned int &sec) const;
  Bytes toBytes() const ;
  void fromBytes(const Bytes &byteStream, 
  const Environment *envp = NULL);
  OCCI_STD_NAMESPACE::string toText(const OCCI_STD_NAMESPACE::string &fmt = "",const OCCI_STD_NAMESPACE::string &nlsParam = "") const;
  void fromText(const OCCI_STD_NAMESPACE::string &datestr,const OCCI_STD_NAMESPACE::string &fmt = "",
                const OCCI_STD_NAMESPACE::string &nlsParam = "",
                const Environment *envp = NULL);
  Date toZone(const OCCI_STD_NAMESPACE::string &zone1, const OCCI_STD_NAMESPACE::string &zone2) const;
  Date& operator=(const Date &d);
  Date addMonths(int i) const;
  Date addDays(int i) const ;
  Date lastDay() const ;
  IntervalDS daysBetween(const Date &d) const;
  Date nextDay(const OCCI_STD_NAMESPACE::string &dow) const;
  bool isNull() const;
  void setNull();
  static Date getSystemDate(const Environment *envp) ;

 private:
  OCIDate date;
  OCIEnv *envhp;
  bool dateIsNull;
  void *dateExt;

  /* private constructor */
  Date(OCIEnv *envp,OCIDate dateval);
  OCIDate getOCIDate() const;

  friend bool operator==(const Date &a,const Date &b);
  friend bool operator>(const Date &a,const Date &b);
  friend bool operator<(const Date &a,const Date &b);
  friend bool operator!=(const Date &a,const Date &b);
  friend bool operator>=(const Date &a,const Date &b);
  friend bool operator<=(const Date &a,const Date &b);
  friend class ResultSetImpl;
  friend class StatementImpl;
  friend class AnyDataImpl;
  friend void getVector(const AnyData &any, OCCI_STD_NAMESPACE::vector<Date> &vect) ;
  friend void setVector(AnyData &any, const OCCI_STD_NAMESPACE::vector<Date> &vect);
  friend void getVector(Statement  *stmt, unsigned int paramIndex,
   OCCI_STD_NAMESPACE::vector<Date> &vect)  ;
  friend void setVector(Statement *stmt, unsigned int paramIndex, 
   const OCCI_STD_NAMESPACE::vector<Date> &vect, const OCCI_STD_NAMESPACE::string &sqltype) ;
  friend void getVector(ResultSet  *rs, unsigned int colIndex, 
  OCCI_STD_NAMESPACE::vector<Date> &vect) ;

}; //class Date

class Timestamp
{
  public:
  Timestamp() ;

  Timestamp( const Environment *env, int year=1,
  unsigned int month=1, unsigned int day=1, unsigned int hour=0,
  unsigned int min=0 ,unsigned int sec=0, unsigned int fs=0, int tzhour=0,
  int tzmin=0) ;

  Timestamp( const Timestamp &src) ;
  ~Timestamp();

  void getTimeZoneOffset( int &hour, int &minute) const ;
  void getTime( unsigned int &hour, unsigned int &minute,
  unsigned int &second, unsigned int &fs) const ;
  void getDate( int &year, unsigned int &month, unsigned int &day )const ;
  OCCI_STD_NAMESPACE::string toText(const OCCI_STD_NAMESPACE::string &fmt, unsigned int fsprec,
  const OCCI_STD_NAMESPACE::string &nlsParam ="") const   ;
  void setTimeZoneOffset( int hour,  int minute)  ;
  void setTime( unsigned int hour, unsigned int minute,
  unsigned int second, unsigned int fs)  ;
  void setDate( int year, unsigned int month, unsigned int day ) ;
  void setNull() ;
  void fromText( const OCCI_STD_NAMESPACE::string &timestmpStr, const OCCI_STD_NAMESPACE::string &fmt ,
  const OCCI_STD_NAMESPACE::string &nlsParam= "", const Environment *env =NULL);
  bool isNull() const;
  Timestamp & operator =( const Timestamp &src) ;
  const IntervalYM subYM(const Timestamp& val) const ;
  const IntervalDS subDS(const Timestamp& val) const ;
  const Timestamp intervalAdd(const IntervalDS& val) const ;
  const Timestamp intervalSub(const IntervalDS& val) const ;
  const Timestamp intervalAdd(const IntervalYM& val) const ;
  const Timestamp intervalSub(const IntervalYM& val) const ;

  friend bool operator==(const Timestamp &a,const Timestamp &b);
  friend bool operator>(const Timestamp &a,const Timestamp &b);
  friend bool operator<(const Timestamp &a,const Timestamp &b);
  friend bool operator !=(const Timestamp &a,const Timestamp &b);
  friend bool operator >=(const Timestamp &a,const Timestamp &b);
  friend bool operator <=(const Timestamp &a,const Timestamp &b);

  friend class ResultSetImpl;
  friend class StatementImpl;
  friend class AnyDataImpl;

  private:
   OCIDateTime *ocidatetime;
   OCIEnv *ocienv;
   void *timestampExt;

   OCIDateTime *getOCIDateTime() const;
   Timestamp( OCIEnv *env, OCIDateTime *dt, bool toCopy = true) ;
   void allocateDataMembers( OCIEnv *env) ;

   friend  void getVector(const AnyData &any,OCCI_STD_NAMESPACE::vector<Timestamp> &vect);
   friend  void setVector(AnyData &any, 
   const OCCI_STD_NAMESPACE::vector<Timestamp> &vect) ;
   friend Timestamp MetaData::getTimestamp(
   MetaData::AttrId attrid) const ;
   friend void getVector(ResultSet  *rs, unsigned int,
   OCCI_STD_NAMESPACE::vector<Timestamp> &vect) ;
   friend void getVector(Statement  *rs, unsigned int,
   OCCI_STD_NAMESPACE::vector<Timestamp> &vect) ;
   friend void setVector(Statement *stmt, unsigned int paramIndex,
   const OCCI_STD_NAMESPACE::vector<Timestamp> &vect, const OCCI_STD_NAMESPACE::string &sqltype) ;
}; // class Timestamp

class IntervalDS
{

  public:
  IntervalDS() ;
  IntervalDS( const Environment *env,int day=0, 
  int hour=0, int minute=0, int second=0, 
  int fs=0) ;
  IntervalDS( const IntervalDS &src) ;

  ~IntervalDS();

  int getDay () const ;
  int getHour () const ;
  int getMinute () const ;
  int getSecond() const ;
  int getFracSec () const ;
  void set( int day, int hour, int minute, int second, int fracsec) ;
  void setNull() ;
  void fromText( const OCCI_STD_NAMESPACE::string &inpstr, const OCCI_STD_NAMESPACE::string &nlsParam ="",
  const Environment *env=NULL)  ;
  OCCI_STD_NAMESPACE::string toText( unsigned int lfprec, unsigned int fsprec,
  const OCCI_STD_NAMESPACE::string &nlsParam="") const ;
  bool isNull() const;
  IntervalDS& operator =( const IntervalDS &src) ;
  IntervalDS& operator +=( const IntervalDS &a);
  IntervalDS& operator -=( const IntervalDS &a);
  IntervalDS& operator *=( const Number &factor);
  IntervalDS& operator /=( const Number &factor);

  friend bool operator>(const IntervalDS &a,
  const IntervalDS &b) ;
  friend bool operator<(const IntervalDS &a,
  const IntervalDS &b) ;
  friend bool operator >=( const IntervalDS &a, 
  const IntervalDS &b);
  friend bool operator <=( const IntervalDS &a, 
  const IntervalDS &b);

  private:
   OCIInterval *ociinter;
   OCIEnv *ocienv;
   void *intervalDSExt;

   IntervalDS( OCIEnv *env, OCIInterval *inter) ;
   OCIInterval * getOCIInterval() const;

   void allocateDataMembers( OCIEnv *env) ;
   friend const IntervalDS Timestamp::subDS(
   const Timestamp& val) const ;
   friend const Timestamp Timestamp::intervalAdd(
   const IntervalDS& val) const ;
   friend const Timestamp Timestamp::intervalSub(
   const IntervalDS& val) const ;
   friend class Date;
   friend void getVector(ResultSet  *rs, unsigned int,
   OCCI_STD_NAMESPACE::vector<IntervalDS> &vect) ;
   friend void getVector(Statement  *rs, unsigned int,
   OCCI_STD_NAMESPACE::vector<IntervalDS> &vect) ;
   friend void setVector(Statement *stmt, unsigned int paramIndex,
   const OCCI_STD_NAMESPACE::vector<IntervalDS> &vect, const OCCI_STD_NAMESPACE::string &sqltype) ;
   friend class StatementImpl;
   friend class ResultSetImpl;
 
};  //class IntervalDS

class IntervalYM
{

  public:
  IntervalYM() ;
  IntervalYM( const Environment *env,int year=0, int month=0) ;
  IntervalYM( const IntervalYM &src) ;
  ~IntervalYM();

  int getYear() const ;
  int getMonth() const ;

  void set( int year, int month) ;
  void setNull() ;
  void fromText( const OCCI_STD_NAMESPACE::string &inpstr, const OCCI_STD_NAMESPACE::string &nlsParam="",
  const Environment *env=NULL) ;
  OCCI_STD_NAMESPACE::string toText( unsigned int lfprec, const OCCI_STD_NAMESPACE::string &nlsParam="") const;
  bool isNull() const;
  IntervalYM & operator =( const IntervalYM &src) ;
  IntervalYM& operator +=( const IntervalYM &a);
  IntervalYM& operator -=( const IntervalYM &a);
  IntervalYM& operator *=( const Number &factor);
  IntervalYM& operator /=( const Number &factor);

  friend bool operator>(const IntervalYM &a, const IntervalYM &b) ;
  friend bool operator<( const IntervalYM &a, const IntervalYM &b) ;
  friend bool operator >=(const IntervalYM &a, const IntervalYM &b);
  friend bool operator <=(const IntervalYM &a, const IntervalYM &b);

  private:
   OCIInterval *ociinter;
   OCIEnv *ocienv;
   void *intervalYMExt;

   IntervalYM( OCIEnv *env, OCIInterval *inter) ;
   OCIInterval *getOCIInterval() const;
   void allocateDataMembers( OCIEnv *env) ;
   friend const IntervalYM Timestamp :: subYM(
   const Timestamp& val) const ;
   friend const Timestamp Timestamp::intervalAdd(
   const IntervalYM &val) const ;
   friend const Timestamp Timestamp::intervalSub(
   const IntervalYM &val) const ;

   friend void getVector(ResultSet  *rs, unsigned int,
   OCCI_STD_NAMESPACE::vector<IntervalYM> &vect) ;
   friend void getVector(Statement  *rs, unsigned int,
   OCCI_STD_NAMESPACE::vector<IntervalYM> &vect) ;
   friend void setVector(Statement *stmt, unsigned int paramIndex,
   const OCCI_STD_NAMESPACE::vector<IntervalYM> &vect, const OCCI_STD_NAMESPACE::string &sqltype) ;

   friend class StatementImpl;
   friend class ResultSetImpl;

}; //class IntervalYM


Number operator+(const Number &a, const Number &b) ;
Number operator/(const Number &dividend, const Number &divisor) ;
Number operator*(const Number &a, const Number &b) ;
Number operator%(const Number &a, const Number &b) ;
Number operator-(const Number &subtrahend, const Number &subtractor) ;
bool operator==(const Number &a, const Number &b);
bool operator!=(const Number &a, const Number &b);

const IntervalYM operator+(const IntervalYM &a, const IntervalYM &b) ;
const IntervalYM operator-(const IntervalYM &a, const IntervalYM &b) ;
const IntervalYM operator*(const IntervalYM &a, const Number& factor);
const IntervalYM operator/(const IntervalYM &a, const Number &factor);
bool operator==(const IntervalYM &a, const IntervalYM &b) ;
bool operator!=(const IntervalYM &a, const IntervalYM &b) ;

const IntervalDS operator+(const IntervalDS &a, const IntervalDS &b) ;
const IntervalDS operator-(const IntervalDS &a, const IntervalDS &b) ;
const IntervalDS operator*(const IntervalDS &a, const Number& factor);
const IntervalDS operator/(const IntervalDS &a, const Number &factor);
bool operator==(const IntervalDS &a, const IntervalDS &b) ;
bool operator!=(const IntervalDS &a, const IntervalDS &b) ;

/*---------------------------------------------------------------------------
                           EXPORT FUNCTIONS
  ---------------------------------------------------------------------------*/


/*---------------------------------------------------------------------------
                          INTERNAL FUNCTIONS
  ---------------------------------------------------------------------------*/


} /* end of namespace occi */
} /* end of namespace oracle */
#endif                                              /* OCCIDATA_ORACLE */

#endif                                              /* _olint */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -