首页 新闻 搜索 专区 学院

Linux下qt4访问sqlite3出问题啦,请求帮忙

0
悬赏园豆:100 [已关闭问题]

登入页面的图代码
void MainDialog::on_loginbutton_clicked()
{
QSqlDatabase db
=QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName(
"NetBar.db");
bool ok=db.open();
if(!ok)
{
QMessageBox::critical(
this,tr("Error"),tr("Can't open database: NetBar.db"));
}
else
{
/*if(m_ui->userline->text()==""||m_ui->passwdline->text()=="")
{
QMessageBox::information(this,tr("登入错误"),tr("用户名或者密码不能为空!"));
m_ui->userline->clear();
m_ui->passwdline->clear();
m_ui->userline->setFocus();

}
*/
QSqlQuery query;
if(query.exec("select passwd from users where uname='"+m_ui->userline->text()+"'"))
{
query.next();
if(m_ui->passwdline->text()!=query.value(0).toString())
{
QMessageBox::information(
this,tr("登陆失败"),tr("请输入正确的用户名与密码!"));
m_ui
->userline->clear();
m_ui
->passwdline->clear();
m_ui
->userline->setFocus();
}

 

最近在做一个Linux下的项目,是网吧收费系统,图形界面是用Qt4来做的,数据库用sqlite3,现在遇到了一些问题,由于涉及到了用户的登入和注册,有关用户的信息都存在数据库里,数据库中有张表叫users,create table users(uid integer primary key, uname text, passwd varchar(16),balance float);我想在用户界面登入时能访问表中的uid,不是uid中的数据就不让登入,需要注册,注册后能自动的在users表中添加用户信息。可是不知道要怎么做,因为是自学的Qt4,不知道要怎么处理,急需各路高手出谋划策,小弟感激不尽!

 

 

fay信梦缘的主页 fay信梦缘 | 初学一级 | 园豆:50
提问于:2010-06-26 09:09
< >
分享
其他回答(3)
0

sqlite3不是网络数据库,多用户连接sqlite是不可以的!你可以采用mysql来做后台支持数据库,这样多用户读写就没有问题,数据库又可以集中管理。

hugoxin | 园豆:180 (初学一级) | 2010-06-27 09:43
mysql中,在Linux下的驱动还要自己编译,觉得麻烦,所以就用sqlite3了,现在问题解决了。它是不能支持多用户的,但可以用客户端和服务器来坐。我这个只是一个老师布置的作业,所以没想那么多!
支持(0) 反对(0) fay信梦缘 | 园豆:50 (初学一级) | 2010-07-07 19:57
0

请问,你知道Linux下的QT程序如何发布吗?

天地不仁 | 园豆:130 (初学一级) | 2010-06-28 15:49
0

静态编译还是交叉编译?

墨墨 | 园豆:250 (菜鸟二级) | 2010-06-28 16:15
是静态编译,不过现在问题解决了,之前有点疏忽大意! 呵呵
支持(0) 反对(0) fay信梦缘 | 园豆:50 (初学一级) | 2010-07-07 19:54
0

做这样的系统,不建议使用SQLite这样的数据库,建议使用SQLServer.

新瓶老酒 | 园豆:181 (初学一级) | 2010-10-02 13:15
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册