sqlite语句的传参问题

在编写sqlite语句的过程中,我们经常发现需要进行传参,下面介绍传参的方法:

由于我主要使用python编写项目,这里以python代码进行示范

c.execute("INSERT INTO NEWS (ID,TITLE,ENGLISH,CHINESE) VALUES (?,?,?,?)",(n,title,text_E,text_C,))

c.execute("SELECT ID FROM NEWS WHERE ID = ?",(1,))

c.execute("UPDATE NEWS SET TITLE = ? WHERE ID = ?",(title,1,))

这里假设已经创建了 NEWS 表,c为已经建立好的对数据库的操作链接,我们可以使用占位符 ?的方式实现对sqlite语句的传参。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Qt 中可以使用 QSqlQuery 类来执行 SQLite 数据库的 SQL 语句。下面是一些常用的 SQLite 语句及其 Qt 实现: 1. 创建表 ```sql CREATE TABLE table_name ( column1 datatype, column2 datatype, column3 datatype, ..... ); ``` ```c++ QSqlQuery query; query.exec("CREATE TABLE table_name (" "column1 datatype," "column2 datatype," "column3 datatype," "....." ")"); ``` 2. 插入数据 ```sql INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...); ``` ```c++ QSqlQuery query; query.prepare("INSERT INTO table_name (column1, column2, column3, ...) VALUES (?, ?, ?, ...)"); query.addBindValue(value1); query.addBindValue(value2); query.addBindValue(value3); // ... query.exec(); ``` 3. 查询数据 ```sql SELECT column1, column2, column3, ... FROM table_name WHERE condition; ``` ```c++ QSqlQuery query; query.exec("SELECT column1, column2, column3, ... FROM table_name WHERE condition"); while(query.next()) { QString column1 = query.value(0).toString(); QString column2 = query.value(1).toString(); QString column3 = query.value(2).toString(); // ... } ``` 4. 更新数据 ```sql UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition; ``` ```c++ QSqlQuery query; query.prepare("UPDATE table_name SET column1 = ?, column2 = ?, ... WHERE condition"); query.addBindValue(value1); query.addBindValue(value2); // ... query.exec(); ``` 5. 删除数据 ```sql DELETE FROM table_name WHERE condition; ``` ```c++ QSqlQuery query; query.exec("DELETE FROM table_name WHERE condition"); ``` 以上就是一些常用的 SQLite 语句及其在 Qt 中的实现方式。需要注意的是,在执行 SQL 语句时,应该使用 prepare 和 addBindValue 函数来避免 SQL 注入攻击。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值