以下是一个简单的示例代码,展示了如何使用Qt C++和SQLite来封装一个类并具备插入、更新和获取记录的功能。
”`cpp
#include
class JblxNzznqTable { public:
JblxNzznqTable() {
// 连接到 SQLite 数据库
m_database = QSqlDatabase::addDatabase("QSQLITE");
m_database.setDatabaseName("database.db");
if (!m_database.open()) {
qDebug() << "无法打开数据库连接";
}
}
~JblxNzznqTable() {
m_database.close();
}
void insertRecord(int id, const QString& factorySampleNo, const QString& jxwy_sj,
const QString& jxwy_sc, const QString& jxwy_bc,
const QString& jxwy_cc, int jxwy_pd) {
QSqlQuery query(m_database);
query.prepare("INSERT INTO jblx_nzznq (id, FactorySampleNo, "
"jblx_nzznq_jxwy_sj, jblx_nzznq_jxwy_sc, "
"jblx_nzznq_jxwy_bc, jblx_nzznq_jxwy_cc, "
"jblx_nzznq_jxwy_pd) VALUES (?, ?, ?, ?, ?, ?, ?)");
query.addBindValue(id);
query.addBindValue(factorySampleNo);
query.addBindValue(jxwy_sj);
query.addBindValue(jxwy_sc);
query.addBindValue(jxwy_bc);
query.addBindValue(jxwy_cc);
query.addBindValue(jxwy_pd);
if (!query.exec()) {
qDebug() << "插入记录失败:" << query.lastError().text();
}
}
void updateRecord(int id, const QString& factorySampleNo, const QString& jxwy_sj,
const QString& jxwy_sc, const QString& jxwy_bc,
const QString& jxwy_cc, int jxwy_pd) {
QSqlQuery query(m_database);
query.prepare("UPDATE jblx_nzznq SET FactorySampleNo = ?, "
"jblx_nzznq_jxwy_sj = ?, jblx_nzznq_jxwy_sc = ?, "
"jblx_nzznq_jxwy_bc = ?, jblx_nzznq_jxwy_cc = ?, "
"jblx_nzznq_jxwy_pd = ? WHERE id = ?");
query.addBindValue(factorySampleNo);
query.addBindValue(jxwy_sj);
query.addBindValue(jxwy_sc);
query.addBindValue(jxwy_bc);
query.addBindValue(jxwy_cc);
query.addBindValue(jwxy_pd);
query.addBindValue(id);
if (!query.exec()) {
qDebug() << "更新记录失败:" << query.lastError().text();
}
}
QVariantList getRecord(int id) {
QSqlQuery query(m_database);
query.prepare("SELECT * FROM jblz_nzznq WHERE id = ?");
<br/><br/><br/><font size=1 color=#CCCCCC>内容由零声教学AI助手提供,问题来源于学员提问</font>