#config.py

MYSQL_NAME = 'root'
MYSQL_PASSWORD = 'zyms90bdcs'
MYSQL_HOST = 'xxxx'
MYSQL_POST = ''
MYSQL_DBNAME = 'flask_sql'
MYSQL_CHARSET = 'utf8' # SQLALCHEMY_DATABASE_URI = 'mysql://{}:{}@{}:{}/{}?charset={}'.format(MYSQL_NAME,MYSQL_PASSWORD,
# MYSQL_HOST,MYSQL_POST,
# MYSQL_DBNAME,MYSQL_CHARSET) SQLALCHEMY_DATABASE_URI = 'mysql://{}:{}@{}:{}/{}'.format(MYSQL_NAME,MYSQL_PASSWORD,
MYSQL_HOST,MYSQL_POST,
MYSQL_DBNAME)

这是链接数据库文件的配置,如果你在models文件中创建了db表,并进行创建 (shell还是直接路由进行创建) create_all()

#models

import pymysql
from flask_sqlalchemy import SQLAlchemy pymysql.install_as_MySQLdb() db = SQLAlchemy() def init_db(app):
db.init_app(app) class User(db.Model):
__tablename__ = 'user' id = db.Column(db.Integer,primary_key=True,autoincrement=True)
u_name = db.Column(db.String(20),unique=True)
u_id = db.Column(db.Integer,unique=True)

# 创建一个 User 的模型,数据库中创建一个 user 的表

# views.py

from flask import Blueprint
from App.models import User, db blue = Blueprint('base1',__name__) @blue.route('/create_all/')
def create_all(): db.create_all() return "DB create success"

很容易出现一个问题

sqlalchemy.exc.InternalError: (InternalError) (1049, "Unknown database 'dome'") None None

有过学过mysql的都会知道,但基础不好的会遇到.

原因是

create_all()
这个函数只是创建表,并不创建数据

更新还有一个坑
当你开开心心完成了上述操作,再次打开(我的方式)创建表发型又出现问题了
ModuleNotFoundError
ModuleNotFoundError: No module named 'MySQLdb'

看在明显是mysqldb 出现问题了,但是我们没有包叫mysqldb啊 只有mysql

终于在网上找到 可能是pymysql 出现问题

在models.py文件中  或者配置文件中也行

import pymysql
pymysql.install_as_MySQLdb()

或者在

MYSQL_NAME = 'root'
MYSQL_PASSWORD = 'zyms90bdcs'
MYSQL_HOST = 'xxxxx'
MYSQL_POST = ''
MYSQL_DBNAME = 'flask_sql'
SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://{}:{}@{}:{}/{}'.format(MYSQL_NAME,MYSQL_PASSWORD,
MYSQL_HOST,MYSQL_POST,
MYSQL_DBNAME) app.config['SQLALCHEMY_DATABASE_URI'] = config.SQLITE_URI

在mysql路径中增加一个驱动 +pymsql  字段

sqlite 不需要

flask 链接mysql数据库 小坑的更多相关文章

  1. Python学习笔记9-Python 链接MySql数据库

    Python 链接MySql数据库,方法很简单: 首先需要先 安装一个MySql链接插件:MySQL-python-1.2.3.win-amd64-py2.7.exe 下载地址:http://dev. ...

  2. Tomcat通过JNDI方式链接MySql数据库

    原文:Tomcat通过JNDI方式链接MySql数据库 拷贝MySQL的JDBC驱动到Tomcat的lib路径下 配置全局数据源或者单个Web应用的局部数据源 局部数据源 在Tomcat的conf/C ...

  3. C# 链接MySql数据库

    C# 链接MySql数据库只得注意的几点: 1.C#链接MySql数据库要在网上下载一个mysql-connector-net-6.0.4-noinstall.rar  这里面放的都是一堆dll .将 ...

  4. 写给小白的JAVA链接MySQL数据库的步骤(JDBC):

    作为复习总结的笔记,我罗列了几个jdbc步骤,后边举个简单的例子,其中的try块请读者自行处理. /* * 1.下载驱动包:com.mysql.jdbc.Driver;网上很多下载资源,自己找度娘,此 ...

  5. Java链接MySQL数据库的用配置文件和不用配置文件的代码

    1.利用配置文件(db.properties)链接MySQL数据库 package tool; import java.io.FileInputStream;import java.sql.Conne ...

  6. python3+Flask 链接MySQL 时,提示“No module named MYSQLdb”

    python3+flask 链接Mysql时提示“No module named MYSQLdb” 解决: pip install mysqlclient

  7. SQLServer 远程链接MySql数据库详解

    SQLServer 远程链接MySql数据库详解 by:授客 QQ:1033553122 测试环境: Microsoft Windows XP Professional 版本2000 Service ...

  8. Java基于jdbc链接mysql数据库步骤示列

    用JDBC来链接MYSQL数据库,基本步骤都大同小异,只不过不同的数据库之间的URL地址有些不同.其基本步骤可分为以下几点: 1.加载相应的数据库的JDBC驱动程序. 2.利用驱动管理器DriverM ...

  9. jmeter链接mysql数据库

    一.下载与MySQL对应的jar包 1.1.查询MySQL的版本, 命令语句 :SELECT VERSION(); 1.2.MySQL官网下载jar包 ,https://downloads.mysql ...

随机推荐

  1. Chrome开发者调试工具

    参考资料 Chrome Console不完全指南 Chrome使用技巧 Chrome开发工具详解 结束语 工欲善其事,必先利其器.

  2. Spring Boot 集成 Spring Security

    1.添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  3. 浅谈javascript函数执行过程

    javascript函数执行过程: 1. 为函数创建一个执行环境 2. 复制函数的 [[scopes]] 属性中的对象构建起执行环境的作用链域 3. 创建函数活动对象并推入执行环境作用链域的前端 4. ...

  4. JS做深度学习1——偶然发现与入门

    JS做深度学习1--偶然发现与入门 不久前,我初次涉猎了Node.js,并且使用它开发了毕业设计的WEB模块,然后通过在Node中调用系统命令执行Python文件方式实现了深度学习功能模块的对接,Py ...

  5. console.log添加样式及图片

    console.log在控制台打出css样式的文字及图片 谷歌开发者中心上面关于谷歌浏览器控制台console.log()的文档 Format Specifier %s Formats the val ...

  6. drbd配置

    DRBD就是网络RAID1,可以通过网络同步两个主机上的硬盘,drbd每次只允许对一个节点进行读写访问. 一.安装DRBD CentOS 6.x rpm -ivh http://www.elrepo. ...

  7. Jackie's blog

    介绍使用winmm.h进行音频流的获取   首先需要包含以下引用对象 #include <Windows.h>#include "mmsystem.h"#pragma ...

  8. 寄生or独立 中国代工厂的悲惨抉择

    2015年苹果.三星.国产手机依旧外表光鲜,最起码,从出货量上看,他们的日子过得还不错,年终奖应该是能发得出来,但这些光鲜的品牌商背后,是一个个悲惨的代工厂,以及一个又一个"一将功成万骨枯& ...

  9. Web 通信技术 ——跨文档信息传输(JavaScript)

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.html * 作者:常轩 * 微信公众号:Worldh ...

  10. sql -- 获取商品分类的最新销售情况

    表设计: 需求: 1.先找出各个分类中销售的最新日期 select prod_class,max(sales_date) as sn from prod_sales group by prod_cla ...