Flask Mysql数据库连接
下载库:
pip install flask-sqlalchemy
下载后进入终端使用python后import导入模块测试没有报错就说明成功了
py文件:
# -*- encoding: utf-8 -*-
from flask import Flask
#导入第三方链接库sql点金术
from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) app.config.from_pyfile('config.ini') # #指定数据库连接还有库名,也可以写到配置文件里,root前为固定写法,root对应的是mysql的密码@后对应的是服务网址和端口/这里对应的是数据库名?后指定的是字符集
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://root:mysql@127.0.0.1:3306/myflask?charset=utf8'
# #省略提交数据库,也可以加到配置文件里,下面操作有commit所以这里注释掉
# app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True #建立数据库对象
db = SQLAlchemy(app)
#建立数据库类,用来映射数据库表,将数据库的模型作为参数传入
class User(db.Model):
#声明表名
__tablename__ = 'user'
#建立字段函数 建立字函数段必须和建立好的mysql表内字段名和约束一致
id = db.Column(db.Integer,primary_key=True)
name = db.Column(db.String(255))
password = db.Column(db.String(255)) @app.route('/')
def index():
#增加,入库逻辑
#声名对象,调用类指定添加内容,id为自增主键可以不传入值
user = User(name="你好你好",password="asd789")
#调用添加方法
db.session.add(user)
# #提交入库
db.session.commit()
return '这是首页' #数据库的查询操作(查)
@app.route('/select')
def select_user(): # #简单的全量查询
# #翻译 select * from
# ulist = User.query.all()
# for i in ulist:
# print(i.name)
# print(i.password) # #只取一条
# #翻译成 select * from user limit 1
# ulist = User.query.first()
# print(ulist.name)
# print(ulist.password) # #使用原生的sql语句
# #翻译为select * from user order by id desc limit 1,2
items = db.session.execute('select * from user order by id desc')
#将结果集强转为list
items = list(items)
print(items) return render_template('day5.html',items=items) #数据库的修改
@app.route('/edit')
def edit_user(): #根据某个字段做修改操作
#翻译为 update user set name='张三' where id = 2
User.query.filter_by(id=2).update({'name':'','password':''}) #使用原生语句进行修改操作
# db.session.execute('update user set password = "123" where id = 6') return '修改操作' #数据库删除操作
@app.route('/del')
def deluser():
#删除根据某个字段做删除,filter_by可以理解为where条件限定
#翻译为delete from user where id = 1
User.query.filter_by(id = 8).delete()
return "这是删除操作" #数据库入库操作
@app.route('/')
def index():
#增加,入库逻辑 b
#声名对象
user = User(name="你好你好",password="asd789")
#调用添加方法
db.session.add(user)
# #提交入库
# db.session.commit()
return '这是首页' if __name__ == "__main__":
app.run()
Flask Mysql数据库连接的更多相关文章
- Python+Flask+MysqL的web建设技术过程
一.前言(个人学期总结) 个人总结一下这学期对于Python+Flask+MysqL的web建设技术过程的学习体会,Flask小辣椒框架相对于其他框架而言,更加稳定,不会有莫名其妙的错误,容错性强,运 ...
- Flask 的 数据库连接 与 DBUtils 数据库连接池
Flask 的 数据库连接 与 DBUtils 数据库连接池 本地线程:thread_local 为每个线程创建存储数据的空间,用于线程之间的数据隔离 否则多个线程同时访问,会使得数据混乱 1 Fla ...
- Python+Flask+MysqL的web技术建站过程
1.个人学期总结 时间过得飞快,转眼间2017年就要过去.这一年,我学习JSP和Python,哪一门都像一样新的东西,之前从来没有学习过. 这里我就用我学习过的Python和大家分享一下,我是怎么从一 ...
- 一个简单的MySql数据库连接池的实现
package cn.hc.connectionPool; import java.io.IOException; import java.io.InputStream; import java.sq ...
- 报表开发工具中mysql数据库连接编码转化失效解决方案
1. 问题描述 在报表开发工具FineReport中,mysql数据库连接通过数据连接编码转换进行编码的转换,在通过报表录入往数据库中录入中文数据的时候,总是出现乱码,这个该怎么解决呢? 2. 解决方 ...
- Mysql数据库连接、查询、记录集操作代码
Mysql数据库链接代码 function dbConnect($hostname,$username,$pass,$db_name,$pconnect =0) { $func=empty($pcon ...
- Mysql数据库连接查询
Mysql数据库连接查询 连接是关系数据库模型的主要特点.连接查询是关系数据库中最主要的查询,主要包括内连接.外连接等.通过连接运算可以 ...
- 子沐代码段——Flask+Mysql+Echarts可视化
前言 子沐不久前,使用Scrapy爬取了智联招聘的职位数据,并部署到服务器上,设置了定时任务.数据量日益庞大.子沐在想,数据不过只是存在数据库里,并没有什么意义,所以子沐萌发一个想法,那就是做一个可视 ...
- Python实现Mysql数据库连接池
python连接Mysql数据库: python编程中可以使用MySQLdb进行数据库的连接及诸如查询/插入/更新等操作,但是每次连接mysql数据库请求时,都是独立的去请求访问,相当浪费资源,而且访 ...
随机推荐
- Appscanner实验还原code2
import _pickle as pickle from sklearn import svm, ensemble import random from sklearn.metrics import ...
- socket基础编程-1
server端和client端 1.server端: import socket server=socket.socket() server.bind(('localhost',8080)) serv ...
- JQ获取URL中是否含有某个字符的话,对页面进行某种操作
一.//JQ获取URL中是否含有某个字符的话,对页面进行某种操作 例:如果URL中含有xia的字符,就在页面引入一个cssvar str=window.location.href; //获取地址栏UR ...
- QTP自动化测试-点滴-步骤
1 添加 test 2 设置 整个测试项目的 setting -数据表位置 3 添加 引用 方法文件 4 添加 action 5 添加 action 对应的 repository 控件库 6 录制.整 ...
- 【python练习题】程序4
# 题目:输入某年某月某日,判断这一天是这一年的第几天? import time year = input('输入年份: \n') month = input('输入月份: \n') day = in ...
- Nintex Workflow Get Attachment link
不多解释,直接上图,操作简单
- Windows Server2008、IIS7启用CA认证及证书制作完整过程
1 添加活动目录证书服务 1.1 打开服务器管理器,右键点击角色,选择“添加角色”,在“添加角色向导”窗口左侧面板选择“服务器角色”,然后勾选“Active Dire ...
- codevs2822
解题思路: tarjan缩点后算出度为0的点有几个,如果只有一个且这个点为爱心天使就行了: #include<iostream> #include<algorithm> #in ...
- 【BZOJ3999】【TJOI2015】旅游 树剖
题目大意 给你一棵树,有\(n\)个点.有\(q\)个操作,每次要你从\(x\)到\(y\)的路径上选两个点,使得距离\(x\)比较远的点的点权\(-\)距离\(x\)比较近的点的点权最大,然后把这条 ...
- python学习日记(匿名函数)
匿名函数 简介 匿名函数:为了解决那些功能很简单的需求而设计的一句话函数. python 使用 lambda 来创建匿名函数. 所谓匿名,意即不再使用 def 语句这样标准的形式定义一个函数. lam ...