Как получить лимит VARCHAR2(n) с помощью OCCI?

У меня есть таблица с несколькими столбцами VARCHAR2(n) ("n" отличается для каждого столбца). Я обращаюсь к таблице из приложения C++ через библиотеку OCCI. Есть ли способ получить это предельное значение (n) для столбца с помощью библиотеки OCCI?


person user2978548    schedule 11.11.2013    source источник


Ответы (1)


Это можно сделать с помощью метаданных. Вот образец:

MetaData metaData = connection->getMetaData((utext*)L"\"TableName\"", MetaData::PTYPE_TABLE);
vector<MetaData> metaDataVector = metaData.getVector(MetaData::ATTR_LIST_COLUMNS);
for (UINT i = 0; i < (UINT)metaDataVector.size(); i++)
{
   if(metaDataVector[i].getInt(MetaData::ATTR_DATA_TYPE) == OCCI_SQLT_CHR)
      columnInfo.size = metaDataVector[i].getInt(MetaData::ATTR_DATA_SIZE);
}
person JKC    schedule 13.07.2018