使用python 语言调用GBase
8a
ODBC 时,
需要在下载安装python 和pyodbc
包。以python2.7 为例
1, 从http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz 下
载python2.7 的源码包。
2, 从http://pyodbc.googlecode.com/files/pyodbc-3.0.6.zip 下载
pyodbc-3.0.6 的安装包。
3, 安装python2.7,先解压Python-2.7.3.tgz,然后执行如下命令:
GBase 8a 程序员手册ODBC 篇
南大通用数据技术股份有限公司
- 79 -
./configure --prefix=/opt/python2.7
make
make install
4, 安装pyodbc-3.0.6,先解压pyodbc-3.0.6.zip,然后执行如下命令:
/opt/python2.7/bin/python setup.py build install
这样python2.7 和pyodbc-3.0.6 就安装成功。可以进行python 控制台进
行验证,如下所示:
[root@GBase pyodbc-3.0.6]# /opt/python2.7/bin/python
Python 2.7.3 (default, Jul 16 2012, 18:45:35)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-50)] on linux2
Type "help", "copyright", "credits" or "license" for more
information.
>>> import pyodbc
>>>
使用import pyodbc 引用pyodbc 时没有报错,说明python 安装成功。
接下来是创建ODBC 数据源,
创建ODBC 数据源的方法请参考3.2.2。
如果涉
及到中文,那么一定要设置GBase 8a ODBC 驱动的字符集(该字符集需要与集
群安装时默认的字符集保持一致)
。
此用例中GBase
8a
ODBC 字符集设置为UTF8。
创建ODBC 数据源成功后就可以使用如下python 脚本测试:
#! /opt/python2.7/bin/python
#coding:utf8
import pyodbc
conn_str = 'DSN=gbase;'
conn = pyodbc.connect(conn_str)
GBase 8a 程序员手册ODBC 篇
- 80 -
南大通用数据技术股份有限公司
cursor = conn.cursor()
cursor.execute("drop table if exists t_pyodbc")
cursor.execute("create table t_pyodbc(a varchar(100), b int)")
cursor.execute("insert
into
t_pyodbc(a
,
b)
values(?,
?)",
'pyodbc',
10)
cursor.execute("insert into t_pyodbc(a , b) values(?, ?)", '南大
通用', 11)
cursor.commit()
cursor.execute("select * from t_pyodbc")
row = cursor.fetchall()
for r in row:
print "%s %d" % (r[0].encode('utf8'), r[1])