flask-sqlalchemy连接数据库

这篇具有很好参考价值的文章主要介绍了flask-sqlalchemy连接数据库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、安装flask_sqlalchemy和pymysql包

pip install flask-sqlalchemy
pip install pymysql

2、进行配置

使用Flask-SQLAlchemy扩展操作数据库,首先需要通过URL建立数据库连接,必须保存到Flask配置对象的SQLALCHEMY_DATABASE_URI中。

HOSTNAME = '127.0.0.1'
PORT     = '3306'
DATABASE = 'flask_test'
USERNAME = 'root'
PASSWORD = 'root'
DB_URI = 'mysql+pymysql://{}:{}@{}:{}/{}?charset=utf8'.format(USERNAME,PASSWORD,HOSTNAME,PORT,DATABASE)
app.config['SQLALCHEMY_DATABASE_URI'] = DB_URI

其中HOSTNAME为路由地址

PORT为端口号,我在创建数据库时没有更改,所以用的默认的3306端口号

DATABASE为数据库名字

后面两个参数为数据库用户名和密码

3、创建SQLALchemy实例

db = SQLAlchemy(app)

我这里创建的实例记为db

4、创建ORM类

创建这个类必须继承db.Model !!!

class Article(db.Model):
    __tablename__ = "article"
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    title = db.Column(db.String(200), nullable=False)
    content = db.Column(db.Text, nullable=False)

第二行设置数据库表名为article。第三行设置id项,将其设置为整数项,并且设置为主键以及自动增长。第四行设置title项,将其设置为含200个字符的字符串,并设置不能非空。第五行设置content项,将其设置为db.Text格式并且设置不能非空。

5、创建表

db.create_all()

然后就会发现,数据库中多出一张表:

flask-sqlalchemy连接数据库

当然,这张表目前还是空的

flask-sqlalchemy连接数据库

 6、在表中增删查改数据

 我们可以在一个视图函数中执行这些操作,当然也可以直接执行

@app.route("/article")
def article_view():
    # 添加数据
    article = Article(title="钢铁是怎样炼成的", content="xxx")
    db.session.add(article)
    db.session.commit()

    # # 查询数据
    # article = Article.query.filter_by(id=1)[0]
    # print(article.title)
    # 
    # # 修改数据
    # article = Article.query.filter_by(id=1)[0]
    # article.content = "yyy"
    # db.session.commit()
    # 
    # # 删除数据
    # article = Article.query.filter_by(id=1)[0]
    # db.session.delete(article)
    # db.session.commit()
    return "数据操作成功"

添加数据时没加id,是因为我们之前设置id的autoincrement为True,于是它会自动增加。 

执行完发现数据库中多出了如下: 

flask-sqlalchemy连接数据库

其他三步结果请自行查看。当然,如果想观察每一步的结果,在执行添加数据前最好最好先将其他三步加上注释,对于其他三步也是一样。文章来源地址https://www.toymoban.com/news/detail-455433.html

到了这里,关于flask-sqlalchemy连接数据库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • python:使用Flask-SQLAlchemy对数据库增删改查的简单示例

    python:使用Flask-SQLAlchemy对数据库增删改查的简单示例

    以下将介绍Flask-SQLAlchemy对数据库增删改查的简单示例。 一、安装所需的库 pip install flask flask-sqlalchemy flask-mysql 二、创建数据表 本示例使用mysql创建数据库和表 CREATE TABLE `user` (   `id` int(11) NOT NULL AUTO_INCREMENT,   `name` varchar(255) DEFAULT NULL,   `age` int(11) DEFAULT NULL,   PRIMARY KEY (`id

    2024年02月07日
    浏览(20)
  • python Flask项目使用SQLalchemy连接数据库时,出现RuntimeError:Working outside of application context.的解决过程记录

    在使用python的Flask框架跟着教程编写项目时,我跟着教程使用了三个文件来组织,分别是main.py(主程序),module.py(数据库模型),controller.py(蓝图模块程序,用Blueprint衔接) 在主程序中,创建app、SQLalchemy实例对象db并将二者绑定 在module.py中,导入主程序中的db和app,创建

    2024年02月09日
    浏览(10)
  • Flask-数据库-SQLAlchemy

    Flask-数据库-SQLAlchemy

    SQLAlchemy是flask的扩展,是一个功能强大的OR映射器,支持多种数据库后台,可以将类的对象映射至数据库表。 使用这个工具,可以创建数据库,创建表,并为数据库添加数据,进行查询操作等。 参考:Flask SQLAlchemy - Flask 教程 | BootWiki.com  app=Flask(__name__)  #创建Flask实例  app

    2023年04月09日
    浏览(13)
  • Flask数据库之SQLAlchemy--介绍--链接数据库

    Flask数据库之SQLAlchemy--介绍--链接数据库

    目录 SQLAlchemy介绍 SQLAlchemy连接数据库  数据库是一个网站的基础!!! 比如MySQL、MongoDB、SQLite、PostgreSQL等,这里我们以MySQL为例进行讲解。 SQLAlchemy是一个ORM框架 对象关系映射 (英语: Object Relational Mapping ,简称 ORM ,或 O/RM ,或 O/R mapping ),是一种程序设计技术,用于实

    2024年02月07日
    浏览(17)
  • 大白话说Python+Flask入门(六)Flask SQLAlchemy操作mysql数据库

    大白话说Python+Flask入门(六)Flask SQLAlchemy操作mysql数据库

    这篇文章被搁置真的太久了,不知不觉拖到了周三了,当然,也算跟falsk系列说再见的时候,真没什么好神秘的,就是个数据库操作,就大家都知道的 CRUD 吧。 1、Flask SQLAlchemy简介 Flask SQLAlchemy 是基于 Flask web 框架和 SQLAlchemy ORM (对象关系映射)的工具。它旨在为 Flask web 应用

    2024年02月05日
    浏览(19)
  • Flask-SQLAlchemy

    Flask-SQLAlchemy

    认识Flask-SQLAlchemy Flask-SQLAlchemy 是一个为 Flask 应用增加 SQLAlchemy 支持的扩展。它致力于简化在 Flask 中 SQLAlchemy 的使用。 SQLAlchemy 是目前python中最强大的 ORM框架, 功能全面, 使用简单。 ORM优缺点 优点 有语法提示, 省去自己拼写SQL,保证SQL语法的正确性 orm提供方言功能(dialect, 可

    2024年02月12日
    浏览(12)
  • 【python】flask操作数据库工具SQLAlchemy,详细用法和应用实战

    【python】flask操作数据库工具SQLAlchemy,详细用法和应用实战

    ✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,

    2024年04月17日
    浏览(15)
  • flask-sqlalchemy使用

    # sqlalchemy 集成到flask中 # 第三方: flask-sqlalchemy 封装了用起来,更简洁 安装 使用

    2024年02月13日
    浏览(18)
  • 【flask sqlalchmey】一次性将返回的列表对象或者 一行数据对象转成dict---flask-sqlalchemy输出json格式数据

    结果示例: 另外: res = Sysdict.query.all() 这种写法已经不被推荐了, 推荐的是scalar_one() 获取一行,scalars()获取多行 user = db.session.execute(db.select(User).filter_by(username=username)).scalar_one() users = db.session.execute(db.select(User).order_by(User.username)).scalars() 一般的 json.dumps(users) 或者 jsonify(use

    2024年02月13日
    浏览(42)
  • Flask-SQLAlchemy事件钩子介绍

    Flask-SQLAlchemy事件钩子介绍

    前几天在搜资料的时候无意中看到有介绍SQLAlchemy触发器,当时感觉挺奇怪的,触发器不是数据库层面的概念吗,怎么flask-SQLAlchemy这个ORM框架会有这玩意。 考虑到效率博客表中有两个字段,body用于存储markdown源文本,body_html存储转换成html的内容,这里就可以在保存数据时使用

    2024年02月06日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包