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

📄 ocintab.inl

📁 一个通用的oracle OCI开发程序包
💻 INL
字号:
template<class T>
COCINestedTable<T>::COCINestedTable(const COCISession& Sess, COCIType type)
: COCICollection<T>(Sess, type)
{
}

template<class T>
COCINestedTable<T>::COCINestedTable(const COCISession& Sess, dvoid* instance, COCIType type)
: COCICollection<T>(Sess, instance, type)
{
}

template<class T>
COCINestedTable<T>::COCINestedTable(const COCINestedTable<T>& src)
: COCICollection<T>(src)
{
}

template<class T>
COCINestedTable<T>::~COCINestedTable()
{
}

template<class T>
void COCINestedTable<T>::remove(sb4 index)
{
  
  CHECK(get_session().get_error(),
        OCITableDelete (get_session().get_env(), 
                        get_session().get_error(),
                        index, 
                        (OCITable*)get_obj().get_instance()));
}

template<class T>
bool COCINestedTable<T>::exists(sb4 index)
{
  boolean exists = false;
  CHECK(get_session().get_error(), 
        OCITableExists (get_session().get_env(),
                        get_session().get_error(),
                       (OCITable*)get_obj().get_instance(),
                       index, 
                       &exists));
  return (bool)exists;
}

template<class T>
sb4 COCINestedTable<T>::first()
{
  sb4 index = 0;
  CHECK(get_session().get_error(),
        OCITableFirst (get_session().get_env(),
                       get_session().get_error(),
                       (OCITable*)get_obj().get_instance(),
                       &index));

  return index;
}

template<class T>
sb4 COCINestedTable<T>::last()
{
  sb4 index = 0;
  CHECK(get_session().get_error(),
        OCITableLast (get_session().get_env(),
                      get_session().get_error(),
                      (OCITable*)get_obj().get_instance(),
                      &index));
  return index;
}

template<class T>
bool COCINestedTable<T>::next(sb4& index)
{
  boolean exists = false;
  sb4 next_index = 0;
  CHECK(get_session().get_error(),
        OCITableNext (get_session().get_env(),
                      get_session().get_error(),
                      index, 
                      (OCITable*)get_obj().get_instance(),
                      &next_index,
                      &exists));

  if(next_index != 0)
  {
    index = next_index;
  }
  else
  {
    index = last() + 1;
  }
  return (bool)exists;
}

template<class T>
bool COCINestedTable<T>::prev(sb4& index)
{
  boolean exists = false;
  sb4 prev_index = 0;
  CHECK(get_session().get_error(),
        OCITablePrev (get_session().get_env(),
                      get_session().get_error(),
                      index,
                      (OCITable*)get_obj().get_instance(),
                      &prev_index,
                      &exists ));   

  if(index == first() && prev_index == 0)
  {
    index = first() - 1;
  }
  else
  {
    index = prev_index;
  }

  return (bool)exists;
}

⌨️ 快捷键说明

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