今天开始学习SQLAlchemy,我用的是python3,所以,首先得让他能在python3上运行。看了下官方网站的介绍,SQLAlchemy准备从0.6版开始支持python3(http://www.sqlalchemy.org/download.html),但现在的0.6还在开发阶段,能正式下载到的只有0.5.3,要下0.6需要通过svn。
SVN地址:http://svn.sqlalchemy.org/sqlalchemy/branches/rel_0_6
其实里面的代码还是python2.x的代码,但SQLAlchemy的包中提供了转换工具(相信正式出来的时候应该不需要转换了)。下载完后执行转换命令:python sa2to3.py -w SQLAlchemy存放目录/lib/SQLAlchemy
必须加-w参数,否则是不会执行转换的,只是输出需要转换的代码
执行完成后执行:python setup.py install进行安装,如果安装不成功请确认转换是否已完成。
这就OK了,测试:
>>> import sqlalchemy
>>> sqlalchemy.__version__
如果输出0.5.3就说明成功了(版本号还没改成0.6)
有一个地方需要注意以下的是:在使用metadata.drop_all(engine)时会报异常,主要是SQLAlchemy在engine/base.py中写了这么一行代码:colname = colname.decode(self.dialect.description_encoding),其中colname是str类型的,在python3中str类型已经去掉了decode方法,改成:colname = colname.encode("ISO-8859-1").decode(self.dialect.description_encoding)即可。其他地方还有没有我还不知道,不过但凡说找不到encode方法的都这么改就可以了。其原理是先将str转换为ISO-8859-1编码的bytes,再转换为指定编码的字符串,当然,这是很卑劣的手段,如果原始编码不是ISO-8859-1会报错,期待0.6版本中能改进这个错误,到这一步,基本上SQLAlchemy就能在python3中使用了,还有其他什么问题欢迎一起探讨,共同进步。
粗略地看了一下SQLAlchemy的文档,感觉很好很强大。该封装的都封装了。
可以下载我的测试代码去试试。
分享到:
- 2009-04-26 22:47
- 浏览 1769
- 评论(2)
- 论坛回复 / 浏览 (2 / 4779)
- 查看更多
相关推荐
sqlalchemy-python-learn-note
SQLAlchemy 1.1 Documentation
SQLAlchemy是Python SQL工具包和对象关系映射器,它为应用程序开发人员提供了SQL的全部功能和灵活性。 SQLAlchemy提供了一整套众所周知的企业级持久性模式,旨在实现高效,高性能的数据库访问
安装python3.6以上 安装包: pandas pymysql sqlalchemy
SQLAlchemy是Python编程语言下的一款开源软件。提供了SQL工具包及对象关系映射(ORM)工具,使用MIT许可证发行。 SQLAlchemy“采用简单的Python语言,为高效和高性能的数据库访问设计,实现了完整的企业级持久模型”...
Python 使用Flask_SQLAlchemy创建数据表 Python源码Python 使用Flask_SQLAlchemy创建数据表 Python源码Python 使用Flask_SQLAlchemy创建数据表 Python源码Python 使用Flask_SQLAlchemy创建数据表 Python源码Python ...
资源分类:Python库 所属语言:Python 资源全名:tiddlywebplugins.sqlalchemy3-3.0.12.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
SQLAlchemy是Python SQL工具包和对象关系映射器,它为应用程序开发人员提供了SQL的全部功能和灵活性。 SQLAlchemy提供了一整套众所周知的企业级持久性模式,旨在实现高效,高性能的数据库访问 SQLAlchemy Python SQL...
主要介绍了Python SQLAlchemy入门教程,本文通过实例主要给大家讲解了python SQLAlchemy基本用法,需要的朋友可以参考下
python sqlalchemy tutorial english 使用手册 英文版
SQLAlchemy是Python编程语言下的一款开源软件。提供了SQL工具包及对象关系映射(ORM)工具,使用MIT许可证发行。 SQLAlchemy“采用简单的Python语言,为高效和高性能的数据库访问设计,实现了完整的企业级持久模型”...
python课程设计——基于flask的短租平台实战项目,web全栈开发,sqlalchemy,适合个人学习,项目依赖: flask redis flask_session flask_wtf flask_script flask_migrate flask_sqlalchemy python课程设计——基于...
官网版本sqlalchemy
本文主要介绍Python使用ORM框架SQLAlchemy操作Oracle数据库。 1. 安装Oracle Instant Client 2. 安装依赖库 使用以下命令来安装SQLAlchemy和cx_Oracle库: pip install SQLAlchemy pip install cx_Oracle 3.创建...
Python 使用Flask-SQLAlchemy实现数据的多对关系 Python源码Python 使用Flask-SQLAlchemy实现数据的多对关系 Python源码Python 使用Flask-SQLAlchemy实现数据的多对关系 Python源码Python 使用Flask-SQLAlchemy实现...
Python 使用Flask-SQLAlchemy实现多条件查询 Python源码Python 使用Flask-SQLAlchemy实现多条件查询 Python源码Python 使用Flask-SQLAlchemy实现多条件查询 Python源码Python 使用Flask-SQLAlchemy实现多条件查询 ...
主要为大家详细介绍了利用flask sqlalchemy实现分页效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
python下使用SQLAlchemy的帮助文档,里面有所有的方法的说明
sqlalchemy 是python对数据库操作一个库。里面集成了各种方法。有兴趣的可以看看
六角形体系结构-python:使用Flask和SqlAlchemy在Python中实现六边形体系结构的示例后端