SQL Server里已经建立了相应的数据库,有对应的表和数据。
步骤:
1. Qt里新建一个空工程,添加main.cpp文件。
2. 在工程文件(.pro文件)添加一行:敬腊QT += sql。
3. 该敲代码了,代码如下:
[cpp] view plain copy
#include <QtGui>
#include <QString>
#include <QTextCodec>
#include <QSqlDatabase>亮中滑
#include <QtSql>
/*连接数据库*/
void OpenDatabase()
{
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC")
db.setDatabaseName(QString("DRIVER={SQL SERVER}"
"SERVER=%1"
"DATABASE=%2"
"UID=%3"
"PWD=%4").arg("QIAN-PC")
.arg("StuManager")
.arg("sa")
.arg("123456"))
if (!db.open())
{
QMessageBox::warning(0, qApp->tr("Cannot open database"),
db.lastError().databaseText(), QMessageBox::Cancel)
}
else
{
qDebug()<<"Connect to Database Success!"
}
}
int main(int argc, char *argv[])
{
QApplication a(argc, argv)
/*设置编码格式*/
QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"培消))
OpenDatabase()
QDialog *mainDialog = new QDialog
QTableView *tableView = new QTableView
QHBoxLayout *layout = new QHBoxLayout
layout->addWidget(tableView)
mainDialog->setLayout(layout)
QSqlQueryModel *model = new QSqlQueryModel
model->setQuery(QObject::tr("select * from 教师"))
tableView->setModel(model)
mainDialog->adjustSize()
mainDialog->show()
return a.exec()
}
4. 看看运行结果吧。
参考网址:http://hhuayuan.blog.51cto.com/1630327/893415
我猜你一定是拷贝的别人的工程。
最有可能就是 自定义生成工具里的QT生成工具是写死的。
右键单击ui文件,打碧渣开属性 找到自定义悔悔悄生成工具-》常规-》命令行 看看是否uic.exe是否在有小文件夹下。
自定义生成工具-》常规-》附加依赖项 里的uic.exe 的路径是否正确。
VS告诉你不在文件夹下,那么最有可能该文件没有生前大成。
你说的明孝C++编译器是指VisualStudio里面庆拍编译代码没问题,而在QtCreator里面编译链接通不过吗?
如果用的是Qt的sql库,要在pro文件里面加一句:
QT += sql
如果用的VisualStudio的库,那可能是少了LIB库目录,要添加一下:
在左边栏目里选择“项目”,
右边会看到项目配置页面,最后一个“构建环境变量”,
点击“详情激差稿”,
可以看到QtCreator使用的环境变量。
把VS的SQL库的路径加到LIB和LIBPATH路径里面。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)