python 通过Sybase ASE ODBC Driver访问sybase数据库,无需配置DSN【自己整理的】
2024-09-01 00:45:39
Python语言对于开发工程师或者测试工程师来说,应该是最高效的开发语言之一。
但python访问sybase数据库的资料相对少见。而且sybase字符集为GB1803时,python访问sybase库中的中文,结果都不理想。
要么使用收费第3方库,就是要自己编译开源库,总之过程很痛苦。
下面将本人整理的资料分享出来,希望帮到您。
- 选择合适的Sybase ASE ODBC Driver。参见https://download.csdn.net/download/iihero/3914619。为了方便大家下载,这里通过百度云分享。
链接:https://pan.baidu.com/s/1wm-swb4w70TK_VIa08qKHg
提取码:seiq - 安装过程,参见下图的2个文档,也可以参见:
http://blog.csdn.net/iihero/article/details/17173011,
http://www.cnblogs.com/ycusking/archive/2012/02/13/sql_link_sybase.html。
请参照readme.txt,如64位的Window,运行odbc_x64.bat后,在c:\windows\syswow64\odbcad32,就可以在驱动列表里看到Sybase ASE ODBC Driver这个驱动了。如果没有看到,需要手工执行:
regedit /s .\ODBC_64.reg
regedit /s .\Sybase_64.reg - 由于该驱动本质是32bit的,所以Python和pyodbc也要用32bit的。否则会出现很多奇怪的问题。
- 调用代码如下:
import pyodbc # 参考http://bbs.csdn.net/topics/380063945,从中获得灵感,无需配置DSN。
conn = pyodbc.connect('DRIVER={Sybase ASE ODBC Driver};NetworkAddress=10.10.132.110,5000;DATABASE=jkp_tjzlk;UID=sa;PWD=123456')
cursor = conn.cursor()
cursor.execute("SELECT famc FROM sn_wffa_gl ")
for row in cursor:
for col in row:
print(col)
cursor.close()
conn.close()
上面资料整理是几年前的事情了,最近有个朋友遇到困难,刚好帮到他,很开心。想到自己一点小小经验,不能敝帚自珍,所以分享出来。错误或者不当之处,请指正。
最新文章
- Asp.net MVC的Model Binder工作流程以及扩展方法(3) - DefaultModelBinder
- iOS JSPatch 热修复使用
- iOS8 蓝牙设备的重连接(retrieve) Swift实现
- 【莫队】bzoj 3781,bzoj 2038,bzoj 3289
- Jetty支持Windows认证
- 设计模式C++实现_1_Singleton设计模式(简单的实现)
- 关于PHP静态方法调用和实例化类调用的区别
- hdu5673 Robot 卡特兰数 / 默慈金数
- 新手入门HTML5有什么推荐的书籍?
- vmvare使用桥接和NAT方式连接网络
- codeforces 242E - XOR on Segment (线段树 按位数建树)
- layui动态数据表格-分页
- Linux下的at定时执行任务命令详解
- 部署python django程序
- 分分钟搞懂rank() over(partition by)的使用
- bootstrap4相关文档
- IE9中ajax请求成功后返回值却是undefined
- classpath 及读取 properties 文件
- 【代码备份】NLM插值
- 阻塞队列之三:SynchronousQueue同步队列 阻塞算法的3种实现
热门文章
- Fiborial 题解——2019.10.14
- 【CSP-S膜你考】即时战略(模拟)
- 对 OAuth2 和非标 DingDing OAuth2 的一次尝试
- YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe
- vue.js动态绑定input的checked
- leetcode:146. LRU缓存机制
- 转:goproxy和go modules的初步使用
- str.replace替换变量名的字符串
- 理解Spark RDD中的aggregate函数(转)
- Java基础 awt Frame 窗体的大小不可调