中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行web.py數據庫入門

發布時間:2021-12-04 15:44:01 來源:億速云 閱讀:161 作者:柒染 欄目:數據庫

如何進行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 where id>$id', vars={'id':100})

for user in users: print user.id, user.name

查詢參數用$var_name表示,查詢時用vars dict中的值替換

查詢得到的是迭代對象,直接循環

至于每個對象的具體屬性,和字段名一一對應。沒有任何預定義的class,沒有映射和配置,一切都是約定,你需要的是自己管理好數據庫字段的命名。

插入:

db.insert('user', name='Michael', age=29, passwd='passwd', email='abc@xyz.com')

插入利用了python的**kw提供字段值,非常方便

修改:

db.update('user', where='id=$id', vars={'id':100}, name='Michael', age=29)

update也充分利用了python的**kw參數,只有傳入的**kw才被update,其他字段保持不變。

where和vars負責where語句的生成和綁定參數。

刪除:

db.delete('user', where='id=$id', vars={'id':100})

和update類似,不過沒有**kw,因為delete只需要where子句。

和Java比,web.py的db操作非常簡單,這主要得益于python的**kw參數和內建的dict支持(對應Java的Map)

試想,如果用Java的Map來傳入參數,你不得不編寫:

Map where_vars = new HashMap();

where_vars.put("id", 100);

Map update_vars = new HashMap();

update_vars.put("name", "Michael");

update_vars.put("age", 29);

db.update("user", "where id=$id", where_vars, update_vars);

不煩死才怪。

在使用Java進行web開發的時候,我們總是習慣分成web,logic,dao層,然而,當極少的代碼量即可完成所有工作時,真的看不出分層的意義。我使用web.py僅需600行代碼就寫完了網站所有的邏輯,因此,整個網站只有一個app.py文件,根本無需拆分web, db。

動態語言是一種趨勢,尤其在web應用中。

關于如何進行web.py數據庫入門問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

伊宁县| 青川县| 九江县| 中西区| 迭部县| 崇礼县| 长治市| 宝鸡市| 汕尾市| 郎溪县| 图木舒克市| 岳普湖县| 临潭县| 荆门市| 蕲春县| 潍坊市| 漳浦县| 墨竹工卡县| 南木林县| 通山县| 岐山县| 探索| 大田县| 怀化市| 商南县| 乡宁县| 东阳市| 辽源市| 泽州县| 陇西县| 巴林右旗| 喀喇沁旗| 游戏| 河源市| 青浦区| 岢岚县| 定边县| 长丰县| 区。| 敖汉旗| 平原县|