扫码阅读
手机扫码阅读

Python连接Oracle踩坑实录

11 2024-10-17

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:Python连接Oracle踩坑实录
文章来源:
光荣之路
扫码关注公众号

本文由Sesametian撰写,主要讲述了作者在测试Oracle同步Hive数据库性能时遇到的一系列问题以及解决方案。作者在尝试将之前用于MySQL的数据灌注代码修改为适用于Oracle时,遇到了多个挑战。

首先,作者安装了cx_Oracle包来连接Oracle数据库,但在尝试连接时遇到了DPI-1047错误,提示缺少64位Oracle客户端库。通过网络搜索,作者发现需要将Oracle的dll文件放置在Python安装目录下。然而,在解决了DPI-1047错误之后,又遇到了“ORA-28040: No matching authentication protocol”错误,原因是Oracle的版本不一致。为了解决这个问题,作者从Oracle官网下载了instantclient并将其dll文件复制到Python目录下,这样链接问题得到解决。

接下来,作者在创建表时遇到了ORA-00907错误,原因是Oracle建表语句与MySQL有所不同。Oracle不支持使用小引号标记表名和字段名,字段类型有所区别,且不支持自增主键。作者修改了建表语句,适应了Oracle的语法。

在数据插入阶段,作者遇到了ORA-00928错误,是因为使用了关键字作为字段名。作者决定不填写字段名,直接通过位置插入数据。随后遇到的ORA-01861错误是因为日期格式不匹配,需要将日期数据转换为Oracle支持的格式。

最终,作者在解决了所有问题后,成功插入了测试数据。这次经历虽然费时费力,但作者希望通过分享这些经验,能帮助其他人避免相同的错误。文末,作者祝愿读者测试顺利,并预祝2023年元旦快乐。

文章最后提到了光荣之路Java和Python测试开发班的招生信息,以及测试开发相关的资源和建议。作者强调了学习和编码的重要性,并鼓励读者为了薪资增长而努力学习。

想要了解更多内容?

查看原文:Python连接Oracle踩坑实录
文章来源:
光荣之路
扫码关注公众号