如何入门web.py数据库,针对这个问题,本文详细介绍了相应的分析和解答,希望能帮助更多想要解决这个问题的小伙伴找到更简单更容易的方法。
Web.py是一个非常精致的Web框架,但是它自己的db模块也非常简洁高效。与Java中复杂的JDBC和复杂的Hibernat配置相比,使用web.db确实简单明了。
创建数据库对象:
db=web.database(dbn='mysql ',user='user ',pw='pass ',db='dbname ')
Dbn指定数据库类型
查询:
users=db . query(' select * from user,其中id$id ',vars={'id':100})
对于user 3360中的用户,请打印user.id、user.name
查询参数由$var_name表示,它被vardict中的值替换。
查询产生一个迭代对象,它直接循环。
至于每个对象的具体属性,与字段名称一一对应。没有预定义的类,没有映射和配置,一切都是协议,你需要的是自己管理数据库字段的命名。
插入:
db.insert('user ',name='Michael ',age=29,passwd='passwd ',email='abc@xyz.com ')
使用python的**kw提供字段值非常方便。
修改:
db.update('user ',其中='id=$id ',vars={'id':100},name='Michael ',age=29)
更新也充分利用了python的**kw参数,只更新传入的**kw,其他字段不变。
而where vars负责生成where语句和绑定参数。
删除:
db.delete('user ',其中='id=$id ',vars={'id':100})
类似于更新,但没有**kw,因为删除只需要where子句。
与Java相比,web.py的db操作非常简单,这主要得益于python的**kw参数和内置dict支持(对应Java的Map)。
想象一下,如果您使用Java Map传入参数,您必须编写:
Map其中_ vars=new HashMap();
其中_vars.put('id ',100);
map update _ vars=new HashMap();
update_vars.put('name ',' Michael ');
update_vars.put('age ',29);
db.update('user ','其中id=$id ',其中_vars,update _ vars);
不,不讨厌。
用Java开发web时,我们总是习惯于把它分为web层、逻辑层和dao层。然而,当所有的工作都可以用很少的代码完成时,我们真的看不到分层的意义。我用web.py写网站的所有逻辑只需要600行代码,所以整个网站只有一个app.py文件,完全不需要拆分web和DB。
动态语言是一种趋势,尤其是在web应用程序中。
关于如何开始使用web.py数据库的问题的答案将在这里分享。我希望
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/133900.html