QT5+sql server(ODBC)创建数据源并且连接数据库

qt5.5 msvc + sql server2008
登录ID:SQLproject
登录密码:mylocalhost
服务器ID:DELL-PC
数据库名:PhoneCount
数据库用户配置,首先创建个数据库 PhoneCount,【请忽略课程设计的名字~】
用户名字为SQLproject
接着
勾选之前创建的数据库
确认状态无误
如果出现错误18456那么检查下自己数据库授权以及登录方式
然后退出当前windows用户验证的登录
用刚才创建的用户登录还要注意这里的用户名要有创建表的权限,不然创建下面的表
tudent
会不成功
忘记登录截图了,但是登录是很简单的,因为是第一次登录,sql会要求你重新设置密码,也就是刚才创建用户设置的密码会取消了,然后设置新密码,那么登录就OK了。
那么接下来就是配置qt这边的数据源了。
打开电脑上的【数据源】ODBC
接着
然后输入我们刚才创建的用户
用户名:SQLproject
密码:localhost
然后更改默认数据库为刚才创建的数据库PhoneCount
然后
采用默认设置不需要修改。如果需要修改可以做适当调整比如加密保存文件路径之类的。
点击完成即可
最后测试数据源~弹出测试成功,So Nice。
然后在数据源之中(ODBC)
参考博客
http://blog.sina.com.cn/s/blog_a07a3f180101dg4g.html
百科
http://jingyan.baidu.com/article/86fae346ba946f3c49121a0e.html
http://jingyan.baidu.com/article/656db918faf80fe381249c1e.html
然后连接上去做测试的时候出现了
那么这时候你就要到自己的保存文件目录下去删除生成的debug/release文件。
查询相关驱动有没有装好
.pro中添加 QT += sql
用户信息表
create tablephoneuser(
mae char(8)notnull,
hone char(11)not null,
addr char(8) notnull,
ID char(18)  notnull primary key
insert phoneuser(name,phone,addr,ID)
values ('李华','18060843577','福建闽江','3522199807120049')
若数据库没有打开那么是无法添加的,但是可以查询数据库已有的信息。
管理员信息表
create tableadministrators(
umber char(8)primarykey,
ame   char(10),
assword char (8)
insert administrators(number,name,password)
values ('313106','manage','123456')
用Qstring中的arg替换字符串非常好用
Qstring("Insertintophoneuservalues('%1','%2','%3','%4')")
//连接数据库
QSqlDatabasedb=QSqlDatabase::addDatabase("QODBC")
db.setDatabaseName(QString("DRIVER={SQLSERVER};"
"SERVER=%1;"    //servername
"DATABASE=%2;"  //sqlname
"UID=%3;"       //loadid
"PWD=%4;"       //password
).arg("DELL-PC")
.arg("PhoneCount")
.arg("SQLproject")
.arg("mylocalhost")
if(!db.open())
//QMessageBox::about(this,"DatabaseError",db.lastError().text())
qDebug()<<"DatabaseError"
qDebug()<
//DELL-PC  电脑名字
//PhoneCout 数据库名字
//SQLproject 登录的用户名
//mylocalhost 登录用户的密码
create tablecharge(
ame char(8)notnull,
Phone char(11)notnull primary key,
lance floatnotnull,
receiveble float not null,
receipts float not null
create tablebill(
Phone char(11)not null,
currentcost float not null,
calltime int not null,
callcost float not null
资源下载:http://download.csdn.net/detail/baidu_25109069/9388870

你可能感兴趣的:(QT)