Atlantis_Ocean 2020-04-15 20:11 采纳率: 0%
浏览 411

QT sqlite如何创建触发器?

我在sqlite写了一个触发器,是可以使用并且有效的,但是写在QT上运行的时候发现没有作用,然后我用sqlite打开QT工程创建的数据库的时候,发现触发器根本没有被创建。小白一枚,有点迷惑,希望能得到各位大佬的建议

//这个是sqlite中使用的代码
CREATE TRIGGER if not exists exp_log AFTER INSERT 
ON purchase 
BEGIN 
INSERT INTO infm(name,price_in) VALUES ('exp', 20);
END;

//这个是在QT中使用的代码
q.prepare("CREATE TRIGGER if not exists exp_log AFTER INSERT ON purchase BEGIN INSERT INTO infm(name,price_in) VALUES (name:, price_in:);END;");
q.bindValue("name:",ui->lineEdit_2->text());
q.bindValue("price_in:",ui->lineEdit_4->text());
  • 写回答

2条回答 默认 最新

  • 嘤嘤嘤嘤嘤怪 2023-11-25 18:28
    关注

    您好,我也在开发的过程中遇到这样的问题
    我在ui设计中使用了TableView来设置数据模型,然后修改数据视图中的数据之后好像后端的触发器没有执行,
    但是我在后端试的时候是能正常的,
    所以只能是这样的情况:
    “前端只是使用了一个数据缓存器来放置数据,我们必须要在前端将数据“提交”给后端之后,后端才能引起触发器的执行……”
    如果说方法的话,有一个简单的方法:就是用tableModel->select();

    评论

报告相同问题?

悬赏问题

  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?