django中SQL alchemy的使用
2022/4/18 2:13:48
本文主要是介绍django中SQL alchemy的使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
settings配置:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'sqlalchemy_test', 'USER': 'root', 'PASSWORD': '******', 'HOST': '127.0.0.1', 'PORT': '3306' } }
创建数据库:
# coding: utf-8 from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import create_engine, Column, Integer, String from sqlalchemy.orm import sessionmaker, scoped_session engine = create_engine('mysql+mysqldb://root:password@localhost:3306/sqlalchemy_test?charset=utf8mb4') # 在同一个线程中,有 scoped_session 的时候,返回的是同一个 Session 对象。 # 在多线程下,即使通过 scoped_session 创建Session,每个线程下的 Session 都是不一样的,每个线程都有一个属于自己的 Session 对象,这个对象只在本线程下共享。 db_session = scoped_session(sessionmaker(autocommit=False, autoflush=False, bind=engine)) Base = declarative_base() Base.query = db_session.query_property() class User(Base): __tablename__ = 'user' id = Column(Integer, primary_key=True, autoincrement=True) name = Column(String(20)) def init_db(): Base.metadata.create_all(engine)
MySQL 使用 mysql-python 作为默认 DBAPI。有许多 MySQL DBAPI 可用,mysqlclient 是一个原生驱动,推荐选择它。
# default engine = create_engine('mysql://scott:tiger@localhost/foo') # mysqlclient (a maintained fork of MySQL-Python) engine = create_engine('mysql+mysqldb://scott:tiger@localhost/foo') # PyMySQL engine = create_engine('mysql+pymysql://scott:tiger@localhost/foo')
这篇关于django中SQL alchemy的使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-25Google Cloud动手实验详解:如何在Cloud Run上开发无服务器应用
- 2024-10-24AI ?先驱齐聚 BAAI 2024,发布大规模语言、多模态、具身、生物计算以及 FlagOpen 2.0 等 AI 模型创新成果。
- 2024-10-20goland工具下,如修改一个项目的标准库SDK的版本-icode9专业技术文章分享
- 2024-10-17Go学习:初学者的简单教程
- 2024-10-17Go学习:新手入门完全指南
- 2024-10-17Golang学习:初学者入门教程
- 2024-10-17Golang学习:新手入门教程
- 2024-10-17Gozero学习指南:初学者必备教程
- 2024-10-17GoZero学习:新手入门与实践指南
- 2024-10-17Go Zero入门:新手必读指南