flask框架实现连接sqlite3数据库的方法分析

本文实例讲述了flask框架实现连接sqlite3数据库的方法。分享给大家供大家参考,具体如下:

1. 在flask文件夹中新建一个models.py文件用来定义模型,内部代码如下

import sqlite3 #导入sqlite3包
def get_conn():
 #定义该函数用来连接数据库
 return sqlite3.connect("test.db")
class User(object):
 def __init__(self,id,name):
  self.id = id
  self.name = name
 def save(self):
  sql = "insert into user VALUES (?,?)"#sql语句
  conn = get_conn()#连接数据库
  cursor = conn.cursor()#定义一个游标
  cursor.execute(sql,(self.id,self.name))#执行sql语句
  conn.commit()#提交数据库改动
  cursor.close()#关闭游标
  conn.close()#关闭数据库连接
 '''
 staticmethod相当于一个定义在类里面的函数,所以如果一个方法既不跟实例
 相关也不跟特定的类相关,推荐将其定义为一个staticmethod,这样不仅使代
 码一目了然,而且似的利于维护代码。
 '''
 @staticmethod
 def query():
  sql = "select * from user"
  conn = get_conn()
  cursor = conn.cursor()
  rows = cursor.execute(sql)
  users = []
  for row in rows:
   user = User(row[0],row[1])
   users.append(user)
  conn.commit()
  cursor.close()
  conn.close()
  return users
 def __str__(self):
  return 'id:{}--name:{}'.format(self.id,self.name)#注此处的是点不是逗号

2. 在flask文件夹中新建一个manage.py文件

(1)导入flask_script包,导入sqlite3包,导入models.py中定义的模型,导入flask中的应用,所以最终头部代码如下

from flask_script import Manager
from learn_flask_script import app
import sqlite3
from models import User

(2)创建数据库,代码如下

@manager.command
def init_db():
 sql = "create table user (id INT,name TEXT)"
 conn = sqlite3.connect("test.db")
 cursor = conn.cursor()
 cursor.execute(sql)
 conn.commit()
 cursor.close()
 conn.close()

(3)保存数据,代码如下

@manager.command
def save():
 user = User(1,'csdn')
 user.save()

(4)查询数据,代码如下

@manager.command
def query_all():
 users = User.query()
 for user in users:
  print(user)

整体代码如下

from flask_script import Manager
from learn_flask_script import app
import sqlite3
from models import User
manager = Manager(app)
@manager.command
def init_db():
 sql = "create table user (id INT,name TEXT)"
 conn = sqlite3.connect("test.db")
 cursor = conn.cursor()
 cursor.execute(sql)
 conn.commit()
 cursor.close()
 conn.close()
@manager.command
def save():
 user = User(1,'zhangjia')
 user.save()
@manager.command
def query_all():
 users = User.query()
 for user in users:
  print(user)
if __name__ == "__main__":
 manager.run()

3. 在终端中使用命令即可运行数据库的创建,添加以及查询

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python常见数据库操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

(0)

相关推荐

  • Python的Flask框架中使用Flask-Migrate扩展迁移数据库的教程

    我们在升级系统的时候,经常碰到需要更新服务器端数据结构等操作,之前的方式是通过手工编写alter sql脚本处理,经常会发现遗漏,导致程序发布到服务器上后无法正常使用. 现在我们可以使用Flask-Migrate插件来解决之,Flask-Migrate插件是基于Alembic,Alembic是由大名鼎鼎的SQLAlchemy作者开发数据迁移工具. 具体操作如下: 1. 安装Flask-Migrate插件 $ pip install Flask-Migrate 2. 修改Flask App部分的代

  • Python的Flask框架与数据库连接的教程

     命令行方式运行Python脚本 在这个章节中,我们将写一些简单的数据库管理脚本.在此之前让我们来复习一下如何通过命令行方式执行Python脚本. 如果Linux 或者OS X的操作系统,需要有执行脚本的权限.例如: chmod a+x script.py 该脚本有个指向使用解释器的命令行.再脚本赋予执行权限后就可以通过命令行执行,就像这样: like this: ./script.py <arguments> 然而,在Windows系统上这样做是不行的,你必须提供Python解释器作为必选参

  • Python框架Flask的基本数据库操作方法分析

    本文实例讲述了Python框架Flask的基本数据库操作方法.分享给大家供大家参考,具体如下: 数据库操作在web开发中扮演着一个很重要的角色,网站中很多重要的信息都需要保存到数据库中.如用户名.密码等等其他信息.Django框架是一个基于MVT思想的框架,也就是说他本身就已经封装了Model类,可以在文件中直接继承过来.但是在Flask中,并没有把Model类封装好,需要使用一个扩展包,Flask-SQLAlchemy.它是一个对数据库的抽象,让开发者不用这些编写SQL语句,而是使用其提供的接

  • Flask框架使用DBUtils模块连接数据库操作示例

    本文实例讲述了Flask框架使用DBUtils模块连接数据库的操作方法.分享给大家供大家参考,具体如下: Flask连接数据库 数据库连接池: Django使用:django ORM(pymysql/MySqldb) Flask/其他使用: -原生SQL         -pymysql(支持python2/3)         -MySqldb(支持python2)     -SQLAchemy(ORM) 原生SQL 需要解决的问题: -不能为每个用户创建一个连接         -创建一定数

  • Flask数据库迁移简单介绍

    前言 用过Django的小伙伴都知道,Django的ORM是自带的,比较特殊,而且集成了很多功能,比如数据库迁移- 何为ORM,个人之见解,简化sql语句的书写,将关系型数据库的一张张表转化为了python的类,最大的好处是简化了学习成本,不会sql语句的程序员也能平滑的使用数据库,并且天生防sql注入.flask可以使用SQLAlchemy,包名为flask-sqlalchemy.至于具体用法翻译的官方文档讲的也足够清楚.大家直接谷歌跟着文档就能搞定,本篇主要讲如何进行数据库迁移. flask

  • Python的Flask框架中使用Flask-SQLAlchemy管理数据库的教程

    使用Flask-SQLAlchemy管理数据库 Flask-SQLAlchemy是一个Flask扩展,它简化了在Flask应用程序中对SQLAlchemy的使用.SQLAlchemy是一个强大的关系数据库框架,支持一些数据库后端.提供高级的ORM和底层访问数据库的本地SQL功能. 和其他扩展一样,通过pip安装Flask-SQLAlchemy: (venv) $ pip install flask-sqlalchemy 在Flask-SQLAlchemy,数据库被指定为URL.表格列出三个最受欢

  • flask + pymysql操作Mysql数据库的实例

    安装flask-sqlalchemy.pymysql模块 pip install flask-sqlalchemy pymysql ### Flask-SQLAlchemy的介绍 1. ORM:Object Relationship Mapping(模型关系映射). 2. flask-sqlalchemy是一套ORM框架. 3. ORM的好处:可以让我们操作数据库跟操作对象是一样的,非常方便.因为一个表就抽象成一个类,一条数据就抽象成该类的一个对象. 4. 安装`flask-sqlalchemy

  • flask框架使用orm连接数据库的方法示例

    本文实例讲述了flask框架使用orm连接数据库的方法.分享给大家供大家参考,具体如下: 注:使用前请安装flask_sqlalchemy包,由于python-mysql不适用于python3.6,所以我们使用pymysql进行替代 1. flask的app文件中输入以下代码 (文件名为:learn_flask_mysql_orm.py) from flask import Flask from flask_sqlalchemy import SQLAlchemy app = Flask(__n

  • flask框架实现连接sqlite3数据库的方法分析

    本文实例讲述了flask框架实现连接sqlite3数据库的方法.分享给大家供大家参考,具体如下: 1. 在flask文件夹中新建一个models.py文件用来定义模型,内部代码如下 import sqlite3 #导入sqlite3包 def get_conn(): #定义该函数用来连接数据库 return sqlite3.connect("test.db") class User(object): def __init__(self,id,name): self.id = id se

  • Windows平台Python连接sqlite3数据库的方法分析

    本文实例讲述了Windows平台Python连接sqlite3数据库的方法.分享给大家供大家参考,具体如下: 之前没有接触过sqlite数据库,只是听到同事聊起这个. 有一次,手机端同事让我帮着写个sql,后面说运行不了报错了,我问是什么数据库,同事说是sqlite,这才知道了还有sqlite这个数据库... 接下来说说Python连接sqlite数据库,非常简单,因为python中的sqlite模块也遵循了DB-API 2.0的规范,所以操作起来和sql server.MySQL.oracle

  • thinkphp3.2.3框架动态切换多数据库的方法分析

    本文实例讲述了thinkphp3.2.3框架动态切换多数据库的方法.分享给大家供大家参考,具体如下: 版本说明: thinkphp3.2.3 新增自定义行为类 文件位置:Application/Common/Behaviors/SwitchDbBehavior.class.php 文件内容: namespace Common\Behaviors; class SwitchDbBehavior { //私有库id,如何连接公有库则设置为share字符串 private $_privateId =

  • Python实现连接postgresql数据库的方法分析

    本文实例讲述了Python实现连接postgresql数据库的方法.分享给大家供大家参考,具体如下: python可以通过第三方模块连接postgresql. 比较有名的有psycopg2和python3-postgresql (一)psycopg2 ubuntu下安装 sudo apt-get install python3-psycopg2 创建一个test.py文件 import psycopg2 # 数据库连接参数 conn = psycopg2.connect(database="te

  • php封装db类连接sqlite3数据库的方法实例

    前言 SQLite3扩展名在PHP 5.3.0+以上都会默认启用.可以在编译时使用--without-sqlite3来禁用它. Windows用户可通过启用php_sqlite3.dll才能使用此扩展. php_sqlite3.dll默认包含在PHP 5.3.0之后的PHP发行版中. 有关详细的安装说明,请查看PHP教程及其官方网站. 本文主要介绍了关于php封装db类连接sqlite3的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 示例代码: <?php clas

  • Abp.NHibernate连接PostgreSQl数据库的方法

    Abp.NHibernate动态库连接PostgreSQl数据库,供大家参考,具体内容如下 初次接触Abp框架,其框架中封装的操作各类数据的方法还是很好用的,本人还在进一步的学习当中,并将利用abp.NHibernate类库操作PostgreSQL数据的相关方法做一记录,不足之处让评论指点扔砖. 话不多说,直接开干: 1.vs 新建一个项目,(窗体或者控制台程序或者测试程序) 2.NuGet 获取类库(adp.NHibernate) 还需安装一个pgSQl 对应的驱动 3.新建一个继承AbpMo

  • thinkPHP连接sqlite3数据库的实现方法(附Thinkphp代码生成器下载)

    本文实例讲述了thinkPHP连接sqlite3数据库的简单实现方法.分享给大家供大家参考,具体如下: 首先检查Thinkphp目录下\Lib\Driver\Db目录里有没有DbPdo.class.php 这个文件. 如果没有就去这里下吧:http://www.thinkphp.cn/extend/205.html 然后再确认打开了PHP对sqlite的扩展支持,extension=php_sqlite.dll 连接sqlite3数据库: 在config.php 文件中添加如下配置: 'DB_T

  • pycharm中django框架连接mysql数据库的方法

    1.首先下载安装pymysql模块. pip install pymysql 如果出现 timeout 超时可以使用其他的资源下载: pip install 模块名 -i https://pypi.douban.com/simple 2.导入库 在项目的init文件中编写下列代码: # 导入pymysql模块 import pymysql pymysql.install_as_MySQLdb() 这样整个项目都能使用pymysql,就不用再每个文件都导入pymyqsl 3.在seeting.py

  • Python轻量级ORM框架Peewee访问sqlite数据库的方法详解

    本文实例讲述了Python轻量级ORM框架Peewee访问sqlite数据库的方法.分享给大家供大家参考,具体如下: ORM框架就是 object relation model,对象关系模型,用来实现把数据库中的表 映射到 面向对象编程语言中的类,不需要写sql,通过操作对象就能实现 增删改查. ORM的基本技术有3种: (1)映射技术 数据类型映射:就是把数据库中的数据类型,映射到编程语言中的数据类型.比如,把数据库的int类型映射到Python中的integer 类型. 类映射:把数据库中的

  • thinkphp3.x连接mysql数据库的方法(具体操作步骤)

    本文实例讲述了thinkphp3.x连接mysql数据库的方法.分享给大家供大家参考,具体如下: 惯例配置文件:ThinkPHP/conf/convention.php (1)在配置文件中填写配置信息(配置文件:"./xmall/conf/config.php"): 示例: <?php return array( //'配置项'=>'配置值' /* 数据库设置 */ 'DB_TYPE' => 'mysql', // 数据库类型 'DB_HOST' => 'loc

随机推荐