作为一个程序员,我想把有限的大脑空间留给有价值的知识,本人偏向于原生语法

特随笔于易查阅

# -*- encoding: utf-8 -*-
from flask import Flask,render_template
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
#从配置文件导入
app.config.from_pyfile("config.ini")
#指定数据库连接和库名
#app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://root:mysql@127.0.0.1:3306/myflask?charset=utf8'
#建立数据库对象
db = SQLAlchemy(app)
#建立数据库类,用来映射数据库,将数据库的模型作为参数传入
class User(db.Model):
#声明表名=
# __tablename__="user"
#建立字段函数
id = db.Column(db.Integer,primary_key=True)
name =db.Column(db.String(200))
password =db.Column(db.String(200))
 
@app.route("/")
def index():
#增,入库逻辑
#声明对象
user= User(name="你好",password="123123")
#调用添加方法
db.session.add(user)
return "hehe"
@app.route("/del")
def del_user():
#根据某个字段删除,filter_by可以理解为where 例如delete from user where id = 1
User.query.filter_by(id=7).delete()
return "删除操作"
@app.route("/update")
def update_user():
#根据某个字段修改操作 updata ueser set name="张三" where id=2
User.query.filter_by(id=2).update({'name':'张三'})
return "修改操作"
@app.route("/select")
def select_user():
#查询 select * from user
ulist = User.query.all()
print(ulist)
for i in ulist:
print(i.name)
#只取一条
ulist = User.query.first()
print(ulist)
#使用原生的sql语句修改
# db.session.execute("insert into user values(0,'李四',456),(0,'王五',555)")
# db.session.execute("truncate table user")
# db.session.execute("update user set name='张三' where id = 2")
# db.session.execute("delete from user where id = 2")
#使用原生的sql语句
# ret = db.session.execute("select * from user")
#将结果集强转为LIST
# ret = list(ret)
return render_template("day05.html",items=items)
if __name__ == "__main__":
app.run()

flask之SQLAlchemy语法和原生mysql语法的更多相关文章

  1. MyCLI :一个支持自动补全和语法高亮的 MySQL/MariaDB 客户端

    MyCLI 是一个易于使用的命令行客户端,可用于受欢迎的数据库管理系统 MySQL.MariaDB 和 Percona,支持自动补全和语法高亮.它是使用 prompt_toolkit 库写的,需要 P ...

  2. MYSQL 语法大全自己总结的

    mysql语法大全 --------数据链接---------------------数据库服务启动net start mysql --关闭服务net stop mysql --登录 -u,-p后面不 ...

  3. 学习mysql语法--基础篇(一)

      前  言  mysql  mysql语法--本篇学习都是通过使用Navicat Premium(数据库管理工具),连接mysql数据. 本篇学习主要有两个部分:    一.创建用户,创建数据库,给 ...

  4. 学习mysql语法--基础篇(二)

      前  言  mysql  mysql语法--本篇学习都是通过使用Navicat Premium(数据库管理工具),连接mysql数据. 本篇学习主要有两个部分: [SQL语句的组成]   DML ...

  5. mysql语法之case when then与列转行

    mysql语法中case when then与列转行的使用场景非常丰富. case语句类似java中条件分支语句的作用,可以类比java中的switch语句或者if语句来学习. 其语法如下: case ...

  6. 【php】---mysql语法增、删、改、查---【巷子】

    1.mysql基本语法 001.增 语法:          insert into 表名 (列1,列2,列3) values(值1,值2,值3)     批量插入:插入insert-插入多行   语 ...

  7. mongo 与 传统mysql语法对比

    MongoDB语法                                  MySql语法 db.test.find({'name':'foobar'})<==> select ...

  8. Mongodb与mysql语法比较

    Mongodb与mysql语法比较   mongodb与mysql命令对比 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由 ...

  9. MySQL语法基础

    一.通用语法 1.MySQL数据库的SQL语句不区分大小写 2.可以用/**/完成注释 3.常用数据类型 类型 描述 int 整型 double 浮点型 varchar 字符串型 date 日期类型, ...

随机推荐

  1. Robot Framework配置发送邮件功能

    请参考:http://www.robotframework.net/?/article/118

  2. Splash plugins_enabled 属性

    plugins_enabled属性可以控制浏览器插件(如 Flash 插件)是否开启.默认情况下,此属性是 false ,表示不开启. function main(splash, args) spla ...

  3. 【Linux】将终端的命令输出保存为txt文本文件

    Linux中的终端很方便,可以直接复制粘贴的. 之后开一个gedit文本编辑器,把复制到的内容粘贴就可以的. 不像windows的cmd控制台,需要先右键标题栏,选择编辑->全选/标记,在右键标 ...

  4. ajax劫持?

    <html<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=ut ...

  5. Android中实现定时器的3中方法

    在Android开发中,定时器一般有以下3种实现方法: 一.采用Handler与线程的sleep(long)方法: 二.采用Handler的postDelayed(Runnable, long)方法: ...

  6. 查询SQlServer相同表结构差异

    USE [数据库名] GO ); ); ); ); SET @DataName1='库1'; SET @DataName2='库2'; SET @TableName1='表1'; SET @Table ...

  7. Microsoft 设计原则

    在本文中 关于现代设计 技术为本 实现以较少投入取得极大成绩 迅速和流畅 真正实现数字化 合作共赢 相关主题 驱动出色设计的基础 我们相信遵循 Microsoft 设计原则可帮助你构建使用户感到愉悦并 ...

  8. Delphi中ClientDataSet的用法小结

    Delphi中ClientDataSet的用法小结 TClientDataSet控件继承自TDataSet,其数据存储文件格式扩展名为 .cds,是基于文件型数据存储和操作的控件.该控件封装了对数据进 ...

  9. 通过orderby关键字,LINQ可以实现升序和降序排序。LINQ还支持次要排序。

    通过orderby关键字,LINQ可以实现升序和降序排序.LINQ还支持次要排序. LINQ默认的排序是升序排序,如果你想使用降序排序,就要使用descending关键字. static void M ...

  10. sencha touch 在线实战培训 第一期 第七节

    2014.1.13晚上8点过一点开的课 本期培训一共八节,前三堂免费,后面的课程需要付费才可以观看. 本节内容:             非结构化数据传输 通过js调取phonegap实现图片采集.上 ...