= Qt: обмен бинарными данными с БД :title-separator: {sp}| :category: Программирование :tags: программирование, qt, postgresql, бд Таблица, с которой осуществляется обмен: [source,sql] ---- CREATE TABLE example ( id INTEGER, bin_data BYTEA ); ---- Запись данных: [source,cpp] ---- const char cart[] = {0x04, 0x43, 0x00, 0x9A}; QByteArray binDataArray(QByteArray::fromRawData(cart, 4)); QSqlField dataField("bin_data", QVariant::ByteArray); byteField.setValue(binDataArray); QSqlDatabase db = QSqlDatabase::database(); QSqlQuery query; query.exec(QString("INSERT INTO files VALUES(%1, %2);") .arg(18) .arg(db.driver()->formatValue(dataField))); --- Чтение данных: [source,cpp] --- QSqlQuery query; query.exec("SELECT id, bin_data FROM example LIMIT 1"); query.next(); QByteArray binDataArray = query.value(query.record().indexOf("bin_data")).toByteArray(); ---