binder是一个用于sql数据库的轻量级映射引擎。

binder的Python项目详细描述


#活页夹-一个python sql映射器。

binder是一个用于python的轻量级sql映射器,它允许您执行sql 使用本机python数据类型和方法的操作:

>>> conn.select(Trades, AND(Trades.q.symbol=='RHAT', Trades.q.trans=='BUY'))
[{'date': datetime.date(2006, 1, 5), 'symbol': u'RHAT', 'trans': u'BUY', 'price'
: 35.0, 'qty': 100}]

数据库行映射到包含本地python数据的python字典 类型。binder使您可以控制执行什么sql查询,同时 负责查询生成、参数传递和数据转换。

目前,binder支持sqlite(通过python内置的sqlite3模块)。 postgresql(通过psycopg2)和mysql(通过mysqldb python模块)。

有关完整文档,请参见manual.txt。

##安装

使用pip安装:

pip install binder

从源安装:

python setup.py install

##快速游览

定义表的架构:

>>> from binder import *
>>> Trades = Table("trades",
...     DateCol("date"), UnicodeCol("trans", 4), UnicodeCol("symbol", 4),
...     IntCol("qty"), FloatCol("price")
... )

使用sqlite创建一个新数据库并创建我们在上面定义的表:

>>> conn = SqliteConnection("readme.db3")
>>> conn.create_table(Trades)

使用常规python字典插入行:

>>> from datetime import date
>>> row = {
...     "date":date(2006, 1, 5), "trans":"BUY", "symbol":"RHAT",
...     "qty":100, "price":35
... }
>>> conn.insert(Trades, row)
>>> conn.commit()

最后,检索数据:

>>> conn.select(Trades)
[{'date': datetime.date(2006, 1, 5), 'symbol': u'RHAT', 'trans': u'BUY', 'price'
: 35.0, 'qty': 100}]

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java无法在spring boot应用程序中启用本机内存跟踪   jakarta ee在Java Web项目上的多窗口   日期将Java时间戳转换为MySQL时间戳,反之亦然   java如何实现异步任务连接到服务器并解析JSON   java为什么我得到索引越界异常?   我们如何在java中以大写字母和小写字母存储同名文件   jni/java:有效不可变本机对象的线程安全发布/共享   Java将文本写入远程文件   int最小硬币算法   java如何设置/获取我在类Vehicle的主方法中创建的类Car的“ford”实例的名称?   java使用计时器在队列已满时重新调度使用者   java从字符串的末尾提取一个子字符串,直到遇到第一个空格为止?   java在SimpleApplication之外正确初始化物理状态