作家
登录

让Python更加充分的使用Sqlite3

作者: 来源: 2017-10-26 14:03:31 阅读 我要评论

  •      
  • connection.close() 
  • 5. 应用Pragmas

    …当它真的有效时

    在你的法度榜样中有几个 pragma 可用于调剂 sqlite3 的行动。特别地,个一一个可以改良机能的是 synchronous :

    1. connection.execute('PRAGMA synchronous = OFF'

    你应当知道这可能是危险的。如不雅应用法度榜样在事务中心不测崩溃,数据库可能会处于不一致的状况。所以请当心应用! 然则如不雅你要更快地插入很多行,那么这可能是一个选择。

    假设你须要在数据库上创建几个索引,而你须要在插入很多行的同时创建索引。把索引的创建推迟到所有行的插入之后可以导致本质性的机能改良。

    7. 应用占位符插入 Python 值

    应用 Python 字符串操作将值包含到萌芽中是很便利的。然则如许做异常不安然,而 sqlite3 给你供给了更好的办法来做到这一点:

    1. # Do not do this! 
    2. my_timestamp = 1 
    3. c.execute("SELECT * FROM events WHERE ts = '%s'" % my_timestamp) 
    4.  
    5. # Do this instead 
    6. my_timestamp = (1,) 
    7. c.execute('SELECT * FROM events WHERE ts = ?', my_timestamp) 

    此外,应用Python%s(或格局或格局的字符串常量)的字符串插值对于 executemany 来说并不是老是可行。所以在此测验测验没有什么真正意义!

    你可以应用这个事实,即 executemany 接收元组的生成器作为参数:

    请记住,这些小技能可能会(也可能不会)给你带来好处,具体取决于特定的用例。你应当永远本身去测验测验,决定是否值得这么做。

    【编辑推荐】

    1. 应用内存破坏实现Python沙盒逃逸
    2. Python对象箱 | 手把手教你若何强行与良久不愫系的同伙制造话题
    3. 热度疯涨的Python,开辟者应大年夜2.x照样3.x着手?
    4. 一线Python运维开辟带你秒懂Flask框架
    5. Python风靡全宇宙,重要原因竟是它?
    【义务编辑:未丽燕 TEL:(010)68476606】

      推荐阅读

      机器学习和大数据正帮助化学家搜寻药物

    沙龙晃荡 | 去哪儿、陌陌、ThoughtWorks在主动化运维中的实践!10.28不见不散! 这个电脑法度榜样是Willem van Hoorn脑力劳动的产品。van Hoorn是应用人工智能设计药物的始创公司—&>>>详细阅读


    本文标题:让Python更加充分的使用Sqlite3

    地址:http://www.17bianji.com/lsqh/38253.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)