ORM操作mysql

摘要:
创建表并添加数据导入sqlalchemy from sqlalchemy.ext.declarativeeimport声明性_ basefromsqlalchemyimportColumn,Integer,Stringfromsqlalchemy.ormimportsessionmakerengine=创建_
创建表和添加数据

import sqlalchemy
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String
from sqlalchemy.orm import sessionmaker


engine = create_engine("mysql+pymysql://root:lizhaoqwe@10.20.252.223/test_db", echo=True)#echo=True可以查看详细信息
Base = declarative_base()
#创建表
class User(Base):
__tablename__ = 'user'#表名
id = Column(Integer, primary_key=True)
name = Column(String(32))
password = Column(String(64))
  
    def __repr__(self):#显示ORM查询执行后的结果(不加这个方法返回的是内存地址)
return '%s:%s' % (self.name, self.password)


Base.metadata.create_all(engine) #创建表结构

#创建连接
Session_class = sessionmaker(bind=engine) #创建与数据库的会话session class,注意,这里返回的是一个类,不是一个实例
session = Session_class()#生成session实例 #可以先理解成curson游标
#查询
# data = session.query(User).filter(User.id < 2).all()#是一个列表
data = session.query(User).filter(User.id > 2).filter(User.id < 5)
#查询出来后直接赋值修改数据
data.name = 'username'
data.password = 'password'
session.commit()

print(data)
#插入数据
user_obj1 = User(name='lizhao', password='lizhaoqwe123')#生成要创建的数据对象
user_ibj2 = User(name='test', password='testqwe123')
session.add(user_obj1)
session.add(user_ibj2)
session.commit()#必须commit之后才会添加数据

免责声明:文章转载自《ORM操作mysql》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇net 异步与同步前端应该知道的技术缩写下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

PHP迭代器模式

什么是迭代器模式  迭代器(Iterator)模式,又叫做游标(Cursor)模式。GOF给出的定义为:提供一种方法访问一个容器(container)对象中各个元素,而又不需暴露该对象的内部细节。 百度百科: http://baike.baidu.com/view/9791023.htm?fr=aladdin 解释 上面这名话可能多数人看得似懂非懂,什么叫...

MySQL是怎样运行的?打卡汇总

启动选项和系统变量 mysql配置方式之一,在命令行上使用选项配置。有长形式和短形式之分,同时等号=前后不能有空格。对于常用的选项提供短形式,也就是选项首字母前加‘-’前缀。这种方式只对当次启动有效。 mysql配置方式之二,在配置文件中使用选项。会按照一定路径寻找配置文件,ini,cnf都为配置文件。配置文件内容可以分组。可以通过命令行指定配置文件的优...

h5页面下拉到底部加载下一页数据

//页面滚到底部异步加载下一页数据 $(window).scroll(function () { //已经滚动到上面的页面高度 var scrollTop = parseFloat($(this).scrollTop()), //页面高度 scrollHeight =$(documen...

MYSQL数据库基础篇

MySQL基础入门 一、数据库1 数据库概念(了解) 1.1 什么是数据库 数据库就是用来存储和管理数据的仓库! 数据库存储数据的优先: l  可存储大量数据; l  方便检索; l  保持数据的一致性、完整性; l  安全,可共享; l  通过组合分析,可产生新数据。 数据库具有原子性,数据不可再分割! 1.2 数据库的发展历程 l  没有数据库,使用...

连接MySQL报 unblock with 'mysqladmin flush-hosts' 问题解决

    工作中突然遇到有一台服务器连接不上MySQL数据库,报错如下,其他服务都正常。特此总结一下解决方法。 可以看出,产生的原因是: 同一个ip在短时间内产生太多(超过mysql数据库max_connect_errors的最大值)中断的数据库连接而导致的阻塞 max_connect_errors是一个MySQL中与安全有关的计数器值,它负责阻止过多尝试...

C++连接mysql数据库的两种方法

现在正做一个接口,通过不同的连接字符串操作不同的数据库。要用到mysql数据库,以前没用过这个数据库,用access和sql server比较多。通过网上的一些资料和自己的摸索,大致清楚了C++连接mysql的方法。可以通过2种方法实现。 第一种方法是利用ADO连接, 第二种方法是利用mysql自己的api函数进行连接。 第一种方法可以实现我当前的需求,通...