1
如何使用libpqxx從數組中獲取值?例如我有這樣的表格:如何使用libpqxx從數組中獲取值?
CREATE TABLE testTable
(
testArray integer[]
);
如何在C++中使用這些值獲取int數組?
如何使用libpqxx從數組中獲取值?例如我有這樣的表格:如何使用libpqxx從數組中獲取值?
CREATE TABLE testTable
(
testArray integer[]
);
如何在C++中使用這些值獲取int數組?
我還沒有發現比其他任何方式:
result wynikiJednostki(ncWykonaj.exec("SELECT * FROM testTable;"));
result::const_iterator rekord = wynikiJednostki.begin()
vector<unsigned short>* values = getArray(record[1].as<string>());
的getArray:
vector<unsigned short>* getArray(string pString)
{
vector<unsigned short>* numbers = new vector<unsigned short>;
pString += ',';
size_t begin = pString.find('{') + 1;
size_t end = pString.find('}');
size_t actualPosition;
string numberS;
while(true)
{
actualPosition = pString.find(',', begin);
if(actualPosition > end)
{
numberS = pString.substr(begin, end - begin);
numbers->push_back(atoi(numberS.c_str()));
return numbers;
}
numberS = pString.substr(end, actualPosition - begin);
numbers->push_back(atoi(numberS.c_str()));
begin = actualPosition + 1;
}
}
暫時我用,但我認爲這是不是最好的方法。