sqlalchemy连接本地oracle

# coding: utf-8

from sqlalchemy import Column, Integer, String, create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base


import cx_Oracle

host= 127.0.0.1
port= 1521
sid= XE
user=system
password=Foxconn123

ip = 127.0.0.1
port = 1521
uname = system # 用户名
pwd = Foxconn123 # 密码
tnsname = XE # 实例名

dsnStr = cx_Oracle.makedsn(ip, port, service_name=tnsname)
connect_str = "oracle://%s:%s@%s" %(uname, pwd, dsnStr)
engine = create_engine(connect_str, encoding=utf-8)





result = engine.execute(select * from hr."mail")

for row in result:
    print (row)
#
# Base = declarative_base()
#
# class Post(Base):
# 	__tablename__ = mail
# 	seq     = Column(seq, String, primary_key=True)
# 	name   = Column(name, String)
# 	mail_to   = Column(mail_to, String)
# 	cc   = Column(cc, String)
# 	bcc  = Column(bcc, String)
# 	url   = Column(url, String)
#
# engine = create_engine(oracle://system:Foxconn123@127.0.0.1:1521/XE, echo=True)
# Database= sessionmaker(bind=engine)
#
# if __name__ == __main__:
# 	db = Database()
# 	query = db.query(Post)
# 	print(query.count())
#

参考

经验分享 程序员 微信小程序 职场和发展