首页 > 数据库 >在简单的python程序中直接使用sqlalchemy

在简单的python程序中直接使用sqlalchemy

时间:2023-11-01 16:59:11浏览次数:39  
标签:engine sqlalchemy python 程序 db Column Base import

database.py

from sqlalchemy import Integer, String, Column
from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()


class Users(Base):
    __tablename__ = "users"

    id = Column(Integer, primary_key=True)
    name = Column(String(64), unique=True)
    email = Column(String(64))

database.py

from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker, Session

from sql_app.models import Base


engine = create_engine(
    'mysql+mysqlconnector://root:[email protected]:3306/dbname?charset=utf8mb4',
    echo=False,
    pool_size=8,
    pool_recycle=60 * 30
)

SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
Base.metadata.create_all(bind=engine)


def get_db() -> Session:
    db = SessionLocal()
    return db

main.py

db = get_db()
res = db.query(models.Users).all()
print(res)
db.close()

标签:engine,sqlalchemy,python,程序,db,Column,Base,import
From: https://www.cnblogs.com/bitterteaer/p/17803497.html

相关文章

  • Hbuilderx运行uni-app项目到Android Studio模拟器只显示“同步手机端程序文件完成”界
    如图,开发工具也显示同步文件,模拟器也显示同步文件完成,但是就是不展示页面,遇到这种情况,一般是2种情况,一个是项目本身有问题跑不起来,另一个就是创建的模拟器设备参数不支持当前app。一.连接真机调试,排除项目本身问题:如果连接真机都跑不起来,那么看下控制台日志,先解决项目本身的问......
  • 《程序员修炼之道:从小工到专家》阅读笔记(6)
    31靠巧合编程:需要避免一种编程方式,是指由于偶然原因导致一段代码能够正常工作,而非因为良好的设计原则。这可能导致难以维护、难以理解的代码,以及难以预测的副作用。要确保编程时明确知道代码执行过程和目的,理解各模块之间的依赖关系,并遵循最佳实践。32算法效率:在不同数据规模下......
  • 程序员的硬核浪漫 — 女友专属语聊房(内附源码)
    ​ 人人都说找个程序猿做男朋友就是好,钱多话少over早。额。。。估计小编把文章发布出去后就要被公司的程序猿同胞们疯狂逮捕挨打了。虽然日常生活中大家对程序猿的标签大多是呆板、木讷、不懂浪漫,格子衫牛仔裤和黑框眼镜,整天宥与Coding(脱发),哪怕是红酒蜡烛鲜花围绕,一个告警也......
  • 创建一个Web服务器并保持其运行,可以使用Python的Flask库。以下是一个基本的示例: ```p
    创建一个Web服务器并保持其运行,可以使用Python的Flask库。以下是一个基本的示例:```pythonfromflaskimportFlask,requestimportosapp=Flask(__name__)@app.route('/webhook',methods=['POST'])defwebhook():  data=request.get_json()  #在这里添加你的......
  • Python使用selenium的Chrome下载文件报错解决
    Python使用selenium的Chrome下载文件报错:失败下载错误。网络不稳定也会引发该错误。咱们这里是因为路径多个反斜杠造成的。 下图是报错内容运行日志:路径代码:base_url="https://www.2ppt.com/"#采集的网址ASP.NET电子商务源码save_path="E:\\Spider\\PPT\\"去掉SaveP......
  • 如何安装Python3.8版本的TensorFlow?
    condainstallkeras 现在tensorflow2.4支持3.63.73.8可以放心安装pipinstalltensorflowDownloadinghttps://mirrors.aliyun.com/pypi/packages/59/9b/tensorflow-2.5.0-cp38-cp38-manylinux2010_x86_64.whl(454.4MB)升级的话可以加个--upgradepipinstalltensorf......
  • [Linux环境编程]Linux程序设置调度策略和优先级
    可以使用chrt命令设置进程的调度策略和优先级。以下命令将11528进程的调度策略设置为RR,调度优先级设置为20:chrt-r--pid2011528具体使用见其help信息,如下:ighthouse@cpp_template$chrt--helpShoworchangethereal-timeschedulingattributesofaprocess.Setpol......
  • Python中的字典的循环和嵌套
     字典进阶操作--循环和嵌套dic={"赵四":"特别能歪嘴","刘能":"老,老四啊...","大脚":"跟这个和那个搞对象","大脑袋":"瞎折腾....",}1.可以用for循环,直接拿到keyforkeyindic:print(key,dic[key])......
  • Python eval的用法及注意事项
    eval是Python的一个内置函数,这个函数的作用是,返回传入字符串的表达式的结果。想象一下变量赋值时,将等号右边的表达式写成字符串的格式,将这个字符串作为eval的参数,eval的返回值就是这个表达式的结果。python中eval函数的用法十分的灵活,但也十分危险,安全性是其最大的缺点。本文从灵活......
  • python 模块导入赋值给变量
    一、假设有一个dangerous_code.py文件。二、导入模块赋值给变量dangerous_module=__import__('dangerous_code')三、执行模块中的delete_all函数(方法)删除内容danderous_module.delete_all()免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果......