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())
#
参考
