Компилятор — MingW 7.3
Диспетчер пакетов — Msys 2 (64-разрядная версия)
ОС — Windows 10 Pro 64 бит
Я пытаюсь прочитать данные Blob, используя библиотека nanodbc.
Я успешно прочитал строковые и целочисленные данные, но у меня возникли проблемы с чтением данных Blob.
Если я использую строковый тип данных для чтения данных большого двоичного объекта, данные получают нулевое завершение, и это недопустимо. Данные BLOB-объектов всегда будут иметь длину 400 байт.
Я пробовал вектор, массив, поток строк, istringstream
станд :: stringstream
std :: stringstream ss = row.get (1);
undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > nanodbc::result::get<std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > >(short) const'
std :: istringstream iss = row.get (1);
undefined reference to `std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> > nanodbc::result::get<std::__cxx11::basic_istringstream<char,
std::char_traits<char>, std::allocator<char> > >(short) const'
Код:
nanodbc::connection conn("Pro20 ANSI", "root", "root");
nanodbc::result row = nanodbc::execute(conn, "select * from identification");
for(int i = 1; row.next(); ++i)
{
string ip, str;
int64_t id;
id = row.get<int64_t>(0);
ip = row.get<string>(2);
str = row.get<string>(1);
cout << endl << endl;
}
Задача ещё не решена.
Других решений пока нет …