QT sql无法删除修改列字段

先告诉大家结论:无法通过delete删除和rename修改sqlite表中的列字段

解决方法一:删除原先的表新建一个  

解决方法二:先复制原先表,然后删除

自己也是初次使用QT中的SQLite数据库,虽然程序员的世界能复制其他人的代码,但是还是要自己一句句敲打才能真正的弄懂。在使用的过程中尝试了添加字段,但是当我想删除多余的column字段的时候,竟然怎么也删不掉,就连修改字段名称也不行,网上百度了超多答案都不行,当然目前仅针对SQLite

query.exec("alter table record delete column te");

query.exec("alter table record drop column te");

query.exec("drop columm te");

query.exec("update table record rename column te to newte");

但是没有一个是成功……

于是我设置条件语句查看是否执行,毕竟query.exec()返回的是bool 类型

但是返回的都是false 于是我又再次使用函数查看错误返回"No query Unable to fetch row"

qDebug()<<query.lastError().text();

于是我用SQLiteStudio可视化数据库把record.db放进去进行查看操作,发现可以通过add增加

但是就是delete删除和rename修改字段都不行

这下我彻底相信了,sqlite真的不能通过delete删除字段和rename修改字段,

但是通过鼠标操作右键是可以进行删除的,点击打勾查看代码发现其删除字段的方式就是先删除再重新建立=_=!!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值