认真求教!使用sql语句向数据库表格中插入数据失败!

voidMySql::initsql(){QSqlDatabasedb=QSqlDatabase::addDatabase("QMYSQL");db.setHostNam... void MySql::initsql()
{
QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setUserName("root");
db.setPassword("");
db.setDatabaseName("mystu");
if(!db.open())
{
qDebug()<<"Database connected failed!";
return;
}
else
{
qDebug()<<"Database connected successfully!";
createTable();
return;
}
}

void MySql::createTable()
{
query=new QSqlQuery;
query->exec("create table user(user_name VARCHAR(20)PRIMARY KEY,pwd VARCHAR(20))");
query->exec("insert into user values('root','123456')");
query->exec("create table student(id VARCHAR(20)PRIMARY KEY,name VARCHAR(20),gender ENUM('male','female'),birthday VATCHAR(20))");
query->exec("insert into student values('0','lzd','male','1228')"); //??为何无效??
}

这是主要代码(我在qt上编的),数据库已连接成功了。
但最后一句插入数据为何无效?(因为之后使用tablemodel显示表单没有任何数据)
而且之后用sql的exec语句插入数据,返回的布尔值也是false,但全然不知道插入失败的原因。

初学者,认真求教!希望大家花费一点点时间给予指教!
展开
 我来答
智者总要千虑
高粉答主

2017-12-20 · 说的都是干货,快来关注
知道顶级答主
回答量:7.9万
采纳率:88%
帮助的人:1.4亿
展开全部
创建表
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)

插入数据
INSERT INTO 表名称 (列1, 列2,...) VALUES (值1, 值2,....)
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
七鑫易维信息技术
2024-09-02 广告
Play Video 七鑫易维是致力于机器视觉和人工智能领域的高新科技企业,迄今已专注眼球追踪技术的研发、创新与应用超过14年,拥有完全自主知识产权,全球专利总量655余项。 作为眼球追踪技术领域的全球知名品牌,七鑫易维的产品体系覆盖眼动分... 点击进入详情页
本回答由七鑫易维信息技术提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式