python sqlalchemy mysql 自动映射
SQLAlchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对象映射进行数据库操作
简言之便是:将对象转换成SQL,然后使用数据API执行SQL并获取执行结果
SQLAlchemy本身无法操作数据库,其必须依赖pymsql等第三方插件,Dialect用于和数据API进行交流,根据配置文件的不同调用不同的数据库API,从而实现对数据库的操作.
以下列举了几种常用插件的数据库url格式:
MySQL-Pythonmysql+mysqldb://<user>:<password>@<host>[:<port>]/<dbname>pymysqlmysql+pymysql://<username>:<password>@<host>/<dbname>[?<options>]MySQL-Connectormysql+mysqlconnector://<user>:<password>@<host>[:<port>]/<dbname>cx_Oracleoracle+cx_oracle://user:pass@host:port/dbname[?key=value&key=value...]
本文使用 pymysql 插件:
安装:
# 安装pymysql插件 pip install pymysql # 安装sqlalchemy pip install sqlalchemy
安装成功后即可使用:
本实例用法为表已经存在, ORM 自动映射类:
from datetime import datetime from sqlalchemy.ext.automap import automap_base from sqlalchemy.orm import sessionmaker from sqlalchemy import create_engine# 数据库连接url DB_CONNECT_STRING = 'mysql+pymysql://username:password@address:port/database'# 创建引擎 engine = create_engine(DB_CONNECT_STRING, echo=True)# 自动映射 Base = automap_base() Base.prepare(engine,reflect=True)# 获取所有表的映射类 tables = Base.classes.keys()# 获取指定类user表 --> user实体类 user = Base.classes.user# 查看user #print(user.__dict__)# 获取所有字段或属性 keys = test_case.__table__.columns.keys()# 创建session Session = sessionmaker(bind=engine) session = Session()# 查表,返回实例列表 result = session.query(test_case).all()# 按条件查表, 返回实例集合 ret = session.query(test_case).filter_by(name='zhangsan').all()# 创建新的实例,并插入,nowtime字段为TIMESTAMP newUser = user(name='lisi', age=10, nowtime=datetime.now()) session.add(newUser)# 提交 session.commit()
参考:
Python操作MySQL之SQLAlchemy:https://www.cnblogs.com/ccorz/p/5711955.html
转载于:https://www.cnblogs.com/yelao/p/11003161.html
python sqlalchemy mysql 自动映射相关推荐
- python编写Mysql自动备份脚本
1、先写一个python脚本 vim /opt/mysql_dump.py #!/usr/bin/env python # -*- coding:utf-8 -*- import os import ...
- MySQL补充——索引,流程控制,数据备份,python操作mysql,SQLAlchemy
一.索引 索引,是数据库中专门用于帮助用户快速查询数据的一种数据结构.类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存放位置,然后直接获取即可. 1.索引种类 普通索引:仅加速查询 唯一索 ...
- Python操作MySQL之SQLAlchemy
Python操作MySQL之SQLAlchemy 原文:https://www.cnblogs.com/ccorz/p/5711955.html SQLAlchemy是Python编程语言下的一款OR ...
- python自动备份数据库_Python Mysql自动备份脚本
测试系统环境 Windows 2003 python 2.5.1 mysql 5.0.1 应该只适用于Win,因为调用了CMD. 增量备份,因为自用,数据库不大. 回头有了需求加上自检测,5天 ...
- 【python解决SQLAlchemy+MySQL插入数据时报警告Warning: (1366, “Incorrect string value: ‘\\xD6\\xD0\\xB9\\xFA\\xB】
python解决SQLAlchemy+MySQL插入数据时报警告Warning: (1366, "Incorrect string value: '\xD6\xD0\xB9\xFA\xB1\ ...
- python数据字典ppt_Python3自动生成MySQL数据字典的markdown文本的实现
为啥要写这个脚本 五一前的准备下班的时候,看到同事为了做数据库的某个表的数据字典,在做一个复杂的人工操作,就是一个字段一个字段的纯手撸,那速度可想而知是多么的折磨和锻炼人的意志和耐心,反正就是很耗时又 ...
- Python SQLAlchemy入门教程
原文:https://www.cnblogs.com/ybjourney/p/11832045.html Python SQLAlchemy入门教程 一.介绍 关于ORM 为什么用sqlalchemy ...
- Python sqlalchemy orm 多对多外键关联
多对多外键关联 注:使用三张表进行对应关联 实现代码: # 创建3个表 配置外键关联 # 调用Column创建字段 加类型 from sqlalchemy import Table, Column, ...
- Python sqlalchemy 连接常用的数据库
python连接sqlServer数据库,Oracle数据库,MongoDB数据库,mysql数据库 python sqlalchemy 简介 学习链接 sqlalchemy是什么? sqlalche ...
最新文章
- python arp脚本_Python scapy 实现一个简易 arp 攻击脚本
- 电子网络发票应用系统网络不通_深度强化学习在典型网络系统中的应用综述
- 架构设计 | 基于消息中间件,图解柔性事务一致性
- 解析XML时DTD的处理--解析时忽略,生成XML文件时加上。-- XML进阶
- Power BI 的 最佳搭档 Excel(基础数据分析)
- VMmware安装VMware Tools问题解决
- C#LeetCode刷题之#824-山羊拉丁文​​​​​​​(Goat Latin)
- 用vector实现二维向量
- 如何删除下一页分节符_word 2010高级应用:分节符的使用
- windows守护进程_在Linux的Windows子系统上(WSL)使用Docker(Ubuntu)
- DOM对象转化成jQuery对象 $(参数) (能不能查到jQuery对象的所有方法)
- 微软开始受到越来越多尊重 谁是幕后功臣?
- 关于EXP-00056: 遇到 ORACLE 错误 1455 ORA-01455: 转换列溢出整数数据类型 EXP-00000: 导出终止失败 的问题解决方法整理...
- linux系统刷机教程,在 Linux 刷 BIOS
- 三星S5660刷机及Root
- vscode 突然无法切换输入法(切换中文输入法)
- MySQL必知必会——实践习题
- 证件照制作相关的人像抠图/分割各家接口整理分析
- 使用同花顺F10查看个股概况!股票量化分析工具QTYX-V2.1.9
- ToC战场进入尾声,ToB市场战争厮杀即将升级?
热门文章
- 无法加载安装程序库 wbemupgd.dll
- ORACLE11G RAC 在 centeros5.5 的安装日志
- 在项目中使用 calendar_date_select
- Activity configChanges 含义
- Linux中硬盘转速查看
- CSS核心技术详解-核心概念
- vs项目中头文件(.h)静态库(.lib)和 动态库(.dll )的路径和配置
- RobotFramework自动化框架—robot文件中调用自定义库
- Java与C++进行系统间交互:Protocol Buffer
- Linux date命令的用法