我有一個PostgreSQL 9.4.5表與基本字符數據類型的列,即,像這樣創建的:QSqlQuery插入的QByteArray作爲字符串插入的PostgreSQL
CREATE TABLE films (
code char(5) CONSTRAINT firstkey PRIMARY KEY,
title varchar(40) NOT NULL);
然後我插入使用QSqlQuery數據,採用了結合的QByteArray :
QSqlQuery query;
query.prepare("INSERT INTO films VALUES (1, ?)");
const QByteArray film("Avatar");
query.addBindValue(film);
query.exec();
在Ubuntu 15.10,膜名進入表作爲字節:
\x417661746172
在Windows上,它以字符形式顯示。
沒有明確地將QByteArray轉換爲QString,有什麼辦法可以告訴QSqlQuery或PostgreSQL將數據視爲一個字符串,所以它可以在Ubuntu上像在Windows上一樣工作?
基本問題 - 是否有任何理由使用'QByteArray'而不是'QString'?在引用的代碼中,我看不到任何內容。 – klin