首页新闻找找看学习计划

新手 数据库问题

0
[待解决问题]

<p>照着书籍打出来的代码,使用exec函数时候正常的创建了 表,然后使用插入inster into 语句插入数据的时候,exec函数返回false。不知道问题出在哪里了。求大神解答  </p>
<p>#ifndef SHUJUKU_H #define SHUJUKU_H <br /> #include <QSqlDatabase></p>
<p>#include <QMessageBox></p>
<p>#include <QSqlQuery></p>
<p>#include <QDebug></p>
<p>#include <QSqlError></p>
<p>#include <QStringList></p>
<p>static bool touxiang() //数据库操作</p>
<p>{</p>
<p>QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");</p>
<p>db.setHostName("zhanghaotou");//主机名</p>
<p>db.setDatabaseName("memory.db");//数据库文件</p>
<p>db.setUserName("admin");//用户名</p>
<p>db.setPassword("123456");//用户密码 <br /> if( !db.open())//打开数据库</p>
<p>{</p>
<p>QSqlError error=db.lastError();</p>
<p>QString list=error.databaseText();</p>
<p>QStringList::Iterator it = list.begin();</p>
<p>while( it!= list.end() )</p>
<p>{</p>
<p>qDebug() <<list;</p>
<p>++it; } <br /> return false; <br /> }</p>
<p>QSqlQuery query(db);</p>
<p>int bi=01;</p>
<p>QString nihao="nnidisas";</p>
<p>query.prepare("insert into student(id,name)values(:id,:name)");</p>
<p>query.bindValue(":id",bi);</p>
<p>query.bindValue(":name",nihao);</p>
<p>query.exec();</p>
<p>return true; }</p>

tj_p的主页 tj_p | 菜鸟二级 | 园豆:202
提问于:2018-03-29 11:29
< >
分享
所有回答(1)
1

把你的建表语句和插入语句,贴出来看看。

Shendu.CC | 园豆:1914 (小虾三级) | 2018-03-29 11:47

上传不了图片 复制过来了

支持(0) 反对(0) tj_p | 园豆:202 (菜鸟二级) | 2018-03-29 14:53

@tj_p: 我没有看到你的建表student的语句啊,只有创建数据库,然后就开始插入student了

支持(0) 反对(0) Shendu.CC | 园豆:1914 (小虾三级) | 2018-03-29 15:19

@Shendu.cc query.prep那句

支持(0) 反对(0) tj_p | 园豆:202 (菜鸟二级) | 2018-03-29 23:17

@Shendu.cc 书上就是这么写的 是因为没有创建表的原因么

支持(0) 反对(0) tj_p | 园豆:202 (菜鸟二级) | 2018-03-29 23:18

@tj_p: 应该是的,你写一个创建表的语句再执行

支持(0) 反对(0) Shendu.CC | 园豆:1914 (小虾三级) | 2018-03-30 09:47
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册