社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
与Windows 系统相比,Mac os系统连接数据库似乎要复杂一些
1.在python中导入oracle数据库相关的第三方库
import cx_Oracle
一开始我简单的以为安装好第三方库就可以了于是,我进行了接下来的数据库查询
conn=cx_Oracle.connect('username/password@localhost:端口/service name')
cur=conn.cursor()
dic={'begintime':"2022/05/24 08:00:00",'endtime':"2022/05/24 10:00:00"}
sql="select * from 表名 where time between to_date(:begintime,'yyyy/MM/DD HH24:MI:ss') and to_date(:endtime,'yyyy/MM/DD HH24:MI:ss')"
x=cur.execute(sql,dic)
input=x.fetchall()
print(input)
不出意外,出现error:
cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library
2.安装Oracle Client
在这一步,,,,我卡住了很久,我看到很多攻略都说Mac电脑已经不能直接安装oracle 了?又是docker,又是虚拟机,真的是给我搞的一脸懵逼。其实哪有那么复杂
oracle官网下载:
Instant Client for macOS (Intel x86)
选择并创建目录为:/Users/user/opt/oracle/instantclient_19_8-basic
3.配置环境变量
(1)打开终端,输入 (注意xxx为用户名路径如san.li)
xxx$ vi ~/.bash_profile
(2)选择E,编辑文件
DYLD_LIBRARY_PATH="/Users/xxx/opt/oracle/instantclient_19_8-basic"
export DYLD_LIBRARY_PATH
export ORACLE_HOME=$DYLD_LIBRARY_PATH
export PATH=$ORACLE_HOME:$PATH
(3)esc退出编辑,:wq保存并退出
(4)生效配置
xxx$ . ~/.bash_profile
至此,大功告成????no no no!!!
我以为之前的python查询数据库的语句可以执行了,,,,然而,还是出错,而且还是之前的错
我迷惑了,,,,我这一顿操作,,,啥用没有啊
我又卡住了,,,不断尝试,于是,我解决了,虽然我也不知道为什么这样就可以,也希望有大佬能看到为我解惑,或者有更好的解决方法!
4.一招定胜负
简单粗暴
将instantclient_19_8-basic下的所有文件复制到python项目的根目录下,结束!
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!