1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | from flask import Flask, url_for, request, redirect, render_template from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) # 设置数据库连接地址 DB_URI = 'mysql+pymysql://root:123456@127.0.0.1:3306/web' app.config[ 'SQLALCHEMY_DATABASE_URI' ] = DB_URI # 是否追踪数据库修改,一般不开启, 会影响性能 app.config[ 'SQLALCHEMY_TRACK_MODIFICATIONS' ] = False # 是否显示底层执行的SQL语句 app.config[ 'SQLALCHEMY_ECHO' ] = True # 初始化db,关联flask 项目 db = SQLAlchemy(app) # 创建模型 class Students(db.Model): __tablename__ = 'students' # 数据库表名 id = db.Column(db.Integer, primary_key = True ) name = db.Column(db.String( 20 )) fullname = db.Column(db.String( 30 )) nickname = db.Column(db.String( 30 )) def __repr__( self ): return "<Students(name='%s', fullname='%s', nickname='%s')>" % ( self .name, self .fullname, self .nickname) if __name__ = = '__main__' : # 创建表 db.create_all() app.run(debug = True ) |
1 2 3 4 | # 删除所有表 db.drop_all() # 创建所有表 db.create_all() |
常用字段
sqlalchemy常用数据类型:
参数 |
类型 |
---|---|
String |
字符类型,使用时需要指定长度,区别于Text类型 |
Text |
文本类型 |
LONGTEXT |
长文本类型 |
Integer |
整形 |
Float |
浮点类型 |
Boolean |
传递True/False |
Decimal |
具有小数点而且数值确定的数值 |
Enum |
枚举类型 |
DateTime |
日期时间类型 |
Date |
传递datetime.date()进去 |
Time |
传递datatime.time() |
针对字段的一些参数设置
参数 |
说明 |
---|---|
primary_key |
是否为主键 |
autoincrement |
是否自动增长 |
unique |
是否唯一 |
default |
默认值 |
nullable |
是否允许为空 |
onupdate |
更新的时候执行的函数 |
name |
该属性在数据库中的字段映射 |
index |
是否创建索引,提高查询效率 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
2023-10-11 canvas绘制箭头
2022-10-11 php 新建对象
2022-10-11 mysql alter
2022-10-11 json 格式化输出