web.py笔记db处理 坑爹_test=True

本文探讨了webpy框架中数据库操作的细节,包括使用db.insert和db.update方法时的注意事项,特别是当使用_test参数时的行为特点。

http://webpy.org/cookbook/Insert.zh-cn

http://webpy.org/cookbook/update.zh-cn

 

db.insert 和db.update处理 

看见里面有个_test选项

貌似是查看sql语句的

于是加入 _test= True,试验

结果。。。。

必须要像api中http://webpy.org/docs/0.3/api一样如此执行,才能打出sql语句来,还以为是执行db.upate的时候就会打出来呢

>>> db = DB(None, {})
>>> name = 'Joseph'
>>> q = db.update('foo', where='name = $name', name='bob', age=2,
...     created=SQLLiteral('NOW()'), vars=locals(), _test=True)
>>> q
<sql: "UPDATE foo SET age = 2, name = 'bob', created = NOW() WHERE name = 'Joseph'">
>>> q.query()
'UPDATE foo SET age = %s, name = %s, created = NOW() WHERE name = %s'
>>> q.values()
[2, 'bob', 'Joseph']

 

最坑爹的是

经过屡次试验,才发现,如果_test=True

update,insert的结果不会保存的

即使马上select,结果也是如此

cookbook里面怎么没有说具体一点呢?调试了半天才发现这个问题

哎,cookbook坑爹啊

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值