python对数据库的操作大多是基于
MySQLdb 模块
http://mysql-python.sourceforge.net/
但是,一般情况下大家都很少直接去调用 MySQLdb 去操作数据库
大多会借助
adodb
http://phplens.com/lens/adodb/adodb-py-docs.htm
小用了一下 adodb发现,还是比较强大的,(简单,直观)
import adodb;
conn = adodb.NewADOConnection('mysql')
conn.Connect('server','user','pwd','db')
cursor = conn.Execute('select * from table')
while not cursor.EOF:
print cursor.fields
cursor.MoveNext()
cursor.Close()
conn.Close()
这样用了一段时间,突然,DBA那边说,数据库需要复用下,又安装了一个mysql,即是两个mysql在一台机器上并存,占用不同的端口
标准端口(3306)
另外一个端口(3307)
再修改程序的时候发现,adodb根本就没有修改port的选项,
为了,不改动太多的已有代码,
于是乎,see了see ,adodb的源码,
(既然 MySQLdb 支持非标准port, 而 adodb是封装了MySQLdb,那就有办法搞搞)
1. 第一步
adodb-220/adodb/adodb.py
194 def Connect(self,host=None,user=None,password=None,database=None):
195 self.database = database
196 self.host = host
197 self.user = user
198 self.password = password
199 self._connect(host,user,password,database)
200 return bool(self._conn)
增加对 port的支持(其实就是增加从 adodb这边把port参数传入到 MySQLdb 那边就可以了)
修改如下
194 def Connect(self,host=None,user=None,password=None,port=None,database=None):
195 self.database = database
196 self.host = host
197 self.user = user
198 self.password = password
199 self.port = port
200 if self.port is None:
201 self._connect(self.host,self.user,self.password,self.database)
202 else:
203 self._connect(self.host,self.user,self.password,self.database,self.port)
200 return bool(self._conn)
2. 第二步, 因为我是使用mysql,所以,只是去改动了adodb_mysql.py
如果你是使用其他数据库,类同,修改之
34 def _connect(self,host=None,user=None,password=None,database=None):
35 self._conn = MySQLdb.connect(host, user, password, database)
修改如下
34 def _connect(self,host=None,user=None,password=None,database=None, port=None):
35 self._conn = MySQLdb.connect(host, user, password, database, port)
经过以上2步修改即可,(比较山寨哈)
使用例子
import adodb
conn = adodb.NewADOConnection('mysql')
conn.Connect('10.10.10.1', 'user', 'password', 'mydb',3307)
分享到:
相关推荐
php 使用ADODB操作MYSQL ,存取,生成html表格,分页,出错处理
易语言adodb模块支持库文件2。0#4。
PHP开发的企业网站源码 PHP+Smarty+Adodb+MySql 适合初学者学习使用 演示地址:http://demo.5x-space.cn
资源介绍:。通过创建ADODB.Connection对象,应用对象的属性方法实现ADO对数据库的操作。资源作者:。资源界面:。资源下载:。
Mono / .NET上用于MySQL的简化的ADODB接口库。 该库可用于将MS ADODB项目移植到Mono环境。
ADODB数据驱动操作支持库
将access数据库数据插入mysql 数据库当中
Support PHP4 version using ADODB to connect mysql database.
adodb php连接数据库,中文帮助文档
易语言学习-ADODB数据库操作支持库 (1.4#3版).zip
vb adodb stream aeecss adodb resouse recordset
adodb中文手册,adodb,非常实用的adodb手册
php adodb 数据处理
它支持的数据库非常多有:MySQL,PostgreSQL,Interbase/Firebird,Informix,Sybase SQL Anywhere,Oracle,MS SQL7/2000,SAP DB,Sybase,DB2,FrontBase,Foxpro,Access,Netezza,LDAP,ODBTP,ADO和普通ODBC...
前提是要在这里:... //包含adodb类库文件 $conn = NewADOConnection(‘mysql’); //创建数据库连接对象 $conn -> debug =true; $conn -> Connect(‘localhost’, ‘root’, ‘1981427’,’test’ ); //连接数据库
ADODB目前支援MySQL, Oracle, Microsoft SQL Server, Sybase, Sybase SQL Anywhere, Informix, PostgreSQL, FrontBase, Interbase (Firebird 及 Borland 版本), Foxpro, Access, ADO 和 ODBC。ADODB也有透过ODBC成功...
ADODB Connection 对象简介 ADODB Connection 对象是 ActiveX Data Objects(ADO)中最基本的对象之一,它提供了连接数据库、执行 SQL 语句、处理结果集等功能。下面是关于 ADODB Connection 对象的详细介绍。 ...
目前 ADODB最新版本是V4.62,支持的数据库种类非常地多,例如:MySQL, PostgreSQL, Interbase, Informix, Oracle, MS SQL 7, Foxpro, Access, ADO, Sybase, DB2 以及一般的 ODBC (其中 PostgreSQL、Informix、Sybase...
adodb adodb5 phpadodb 数据库adodb