分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 软件开发

20180202之engine,URL,base,session

发布时间:2023-09-06 01:40责任编辑:沈小雨关键词:暂无标签
  1. SQLAlchemy版本信息检查
  2. import sqlalchemyprint(sqlalchemy.__version__)
  3. 数据库链接
    1. 创建engine
    2. from sqlalchemy import create_engineengin=create_engine("dialect+driver://username:password@host:port/database")
    3. 数据库URL支持
      1. Postgresql:
      2. # defaultengine = create_engine(‘postgresql://scott:tiger@localhost/mydatabase‘)# psycopg2engine = create_engine(‘postgresql+psycopg2://scott:tiger@localhost/mydatabase‘)# pg8000engine = create_engine(‘postgresql+pg8000://scott:tiger@localhost/mydatabase‘)
      3. MySQL:
      4. # defaultengine = create_engine(‘mysql://scott:tiger@localhost/foo‘)# mysql-pythonengine = create_engine(‘mysql+mysqldb://scott:tiger@localhost/foo‘)# MySQL-connector-pythonengine = create_engine(‘mysql+mysqlconnector://scott:tiger@localhost/foo‘)# OurSQLengine = create_engine(‘mysql+oursql://scott:tiger@localhost/foo‘)
      5. Oracl:
        engine = create_engine(‘oracle://scott:tiger@127.0.0.1:1521/sidname‘)engine = create_engine(‘oracle+cx_oracle://scott:tiger@tnsname‘)
      6. Microsoft SQL Server:
        # pyodbcengine = create_engine(‘mssql+pyodbc://scott:tiger@mydsn‘)# pymssqlengine = create_engine(‘mssql+pymssql://scott:tiger@hostname:port/dbname‘)
      7. SQLite:
        #Unix/Mac - 4 initial slashes in totalengine = create_engine(‘sqlite:////absolute/path/to/foo.db‘)#Windowsengine = create_engine(‘sqlite:///C:\\path\\to\\foo.db‘)#Windows alternative using raw stringengine = create_engine(r‘sqlite:///C:\path\to\foo.db‘)#Memony SQLite databaseengine = create_engine(‘sqlite://‘)
  4. Declarative方法对象
    1. 基类创建
    2. from sqlalchemy.ext.declarative import declarative_baseBase = declarative_base()
    3. 基于基类创建映射类
    4. from sqlalchemy import Column,Integer,Stringclass User(Base): ???__tablename__="user" ???id=Column(Integer,primary_key=True) ???name=Column(String)
    5. 通过映射类创建实例
      user = User(name=‘Huangy‘,fullname=‘Huangya‘, password=‘123.com‘)
  5. Session,用于ORM与数据库的链接,创建session的时候需绑定数据库engine
  6. from sqlalchemy.orm import sessionmakerSession=sessionmaker(bind=engine)
    1. 需要session时,再初始化
    2. #当需要和数据库链接的时候,再初始化一个session对象session=Session()
    3. 虽然以上操作session和engine已经关联,但是无任何链接,当使用的时候,再从engine维护的链接池中检索是否存在链接,若存在则保持,直到close或更改。

20180202之engine,URL,base,session

原文地址:https://www.cnblogs.com/yaya625202/p/8406522.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved