mysql中占位符的使用,与sqlite3有区别!

本文讲述了MySQL初学者在从SQLite转用MySQL时遇到的问题,特别是在SQL语句中使用%与?作为占位符的区别,以及调试过程中的困扰和解决方法。
摘要由CSDN通过智能技术生成

        作为一个mysql的初学者,写这篇是因为作者最近在写作业的时候踩了血坑,因为前期用的是sqlite,由于先入为主,所以刚开始写代码的时候还是用的 ? , 但是调试的时候怎么也不对,问gpt也没有答到关键的点上,整了一晚上。

        mysql中的占位符一定要用 %s;

sql_add = f"INSERT INTO pull (pullid,`index`,owner,repo,created,checktime,status) VALUES (%s,%s,%s,%s,%s,%s,%s);"  
  

        在sqlite3中的占位符则是用的  ? 。

insert = f"INSERT INTO {table_name} (AMOUNT,TYPE, DATE, COMMENT) VALUES (?, ?, ?, ?)"
        cursor.execute(insert, (new_amount, new_type, new_date, new_comment))    

        

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值