当前位置: 首页 > news >正文

锚文本外链网站教育机构退费纠纷找谁

锚文本外链网站,教育机构退费纠纷找谁,河北建设执业信息网,网站建设结论及体会关于sqlalchemy的使用 说明一、sqlachemy总体使用思路二、安装与创建库、连结库三、创建表、增加数据四、查询记录五、更新或删除六、关联表定义七、一对多关联查询八、映射类定义与添加记录 说明 本教程所需软件及库python3.10、sqlalchemy安装与创建库、连结库创建表、增加数…

关于sqlalchemy的使用

  • 说明
  • 一、sqlachemy总体使用思路
  • 二、安装与创建库、连结库
  • 三、创建表、增加数据
  • 四、查询记录
  • 五、更新或删除
  • 六、关联表定义
  • 七、一对多关联查询
  • 八、映射类定义与添加记录

说明

  1. 本教程所需软件及库python3.10、sqlalchemy
  2. 安装与创建库、连结库
  3. 创建表、增加数据
  4. 查询记录
  5. 更新或删除
  6. 关联表定义

一、sqlachemy总体使用思路

  1. 在创建或连结后会返回engine(可以参考第二节安装与创建库、连结库)
  2. 在创建表后会返回一个表名(可以参考第三节创建表、增加数据)
  3. 使用时表名.方法.属性
  4. 方法有insert,select,update,delecte
  5. 与数据对接时,conn = engine.connect()—conn.execut(表方法返回的值)
  6. 当数据库的数据发生改变时,要提交(conn.commit())
  7. 查询时,要注意条件,有两种方法where() | or_ | and_

二、安装与创建库、连结库

  1. 安装库
pip install sqlalchemy
#查看版本
sqlalchemy.__vetrsion__
  1. 创建库或连结库
#连结或创建sqlite3
from sqlalchemy import create_engine
engine = create_engine('sqlite:///db_path.db',echo=True)
conn = engine.connect()
#连结或创建mysql
from sqlalchemy import create_engine
engine = create_engine('mysql://user:pwd@localhoast/库名',echo=True)
conn = engine.connect()

注:create_engine如果已经存在就连结,如果不存在就创建。

  1. 在sqlalchemy执行sql语句
import sqlachemy
query = sqlachemy.text("select * from 表名")#sql语句
engine = sqlalchemy.create_engine(`sqlite:///db_path.db`,echo=True)
conn = engine.connect()
result_set = conn.execute(query)
print(result_set.all())
conn.close()
engine.dispose()

注:以下代码engine代表创建或检查数据库,conn代表连结数据库。

三、创建表、增加数据

  1. 创建表
    创建表要用到sqlalchemy的三个库MetaData、Table、Column及类型代码
from sqlalchemy import MetaData,Table,Column
meta = MetaData()
#Meta定义好的字段属性存在这,所以第二个字段就要传它
var = Table(
'表名',meta,
Clolumn('字段名',sqlachemy.类型,primary_key=True),
.......
)
meta.create_all(engine)#创建表

如果表已经存在了,就不会创建,如果不存在就创建。
2. sqlachemy字段类型

名称字段英文用法说明
整形IntegerInteger存整数
小数存小数
字符StringString(字符个数)存字符
日期DateDate存年月日

注:主键primary_key=True,unique=True唯一,unllable=True不能为空。

  1. 增加数据(insert)
    3.1 插入一条数据
var = 表名.insert().values(字段名=值,......)
with engine.connect() as conn:conn.execute(var)conn.commit()

1、连结conn以后执行数据库操作要用conn.execut(sqlachemy语句)
2、数据库数据有变要提交事务,conn.commit()
3、var = 表名.insert().values(字段名=值,…)是新增数据的sqlachemy语句
4、 自增长是插一次,它就增加一次,它不管你是否成功
3.2 插入多条数据

var = 表名.insert()
with engine.connect() as conn:conn.execute(var,[{'字段名':value,.......},{'字段名':value,.......},........])conn.commit()

这个要用列表,并且列表里放字典,key是字段名,value是对应的值

四、查询记录

  1. sql查询语句
select * from 表名
  1. 函数表达式
表名.select()
  1. 结果获取
结果.fetchall()#获取所有数据
结果.fetchone()#获取第一条数据
  1. 条件查询
表名.select().where(表名.c.字段名条件)
#一次只能有一个条件
#如果多个条件查询时,在后面加.where(表名.c.字段名条件)
  1. and_(与)、or_(或)
from sqlalchemy.sql import and_,or_
表名.select().where(or_(条件,条件.....) | and_(条件,条件.....))
# 要在where中使用and_,or_
# and_,or_可以相互嵌套

五、更新或删除

  1. 更新
表名.update().where(条件).values(字段名=value)
#查询结果后再更新值,一个values可以更新多条记录或所有记录,取决于查询的结果
  1. 删除
表名.delete().where(条件)
#查询结果后再删除,可以删除多条记录或所有记录,取决于查询的结果

六、关联表定义

  1. 一对多关联(sqlachemy.ForeignKey(‘表名.id’))
import sqlalchemy
#创建表
mate = sqlalchemy.MateData()
表名 = sqlachemy.Table('表名',mate,sqlachemy.Column('字段名',sqlachemy.Integer,sqlachemy.ForeignKey('关联的表名.id'),nullable=False),)
  1. 多对多

七、一对多关联查询

  1. 查询条件
imort sqlalchemy
join = 关联表名.join(被关联表名,关联表名.c.id==被关联表名.c.id)
  1. 使用查询
imort sqlalchemy
join = 关联表名.join(被关联表名,关联表名.c.id==被关联表名.c.id)
#关联表和被关联表的信息都显示
query = sqlalchemy.select(join).where(关联表或被关联表.字段=value)
#只显示关联表或被关联表的信息
query = sqlalchemy.select(被关联表名或关联表名).select_from(join).where(关联表或被关联表.字段=value)
print(conn.execute(query).fetchall())

八、映射类定义与添加记录

  1. 映射基础
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()class 类名(Base):__tablename__='表名'字段名 = Column(类型,其它参数)......
#创建表
类名.metadata.create_all(engine) 
  1. 利用类添加记录
from sqlalchemy.orm import sessionmakerSession = sessionmaker(bind=engine)session = Session()
#上面的类名
#增加一条记录
var = 类名(字段名=value,......)#类名实例化
session.add(var)
session.commit()
#增加多条记录
varList = [类名实例化列表]
session.add_all(varList)
session.commit()
http://www.hkea.cn/news/271903/

相关文章:

  • 强企网做网站网店推广有哪些
  • 博物馆网站建设策划书公司如何在百度宣传
  • 做cpa广告网站教程百度sem推广具体做什么
  • 免费网站建站WWW222国际军事最新消息今天
  • 做网站软件miscrosoft云服务器
  • 如何做盗版小说网站最经典的营销案例
  • 设计类的网站和简介关键词优化推广排名多少钱
  • 代理记账网站怎么做北京seo方法
  • cdr做网站企业网站建设的基本流程
  • 网站建设需要哪些硬件百度指数排名
  • 2017年网站开发用什么语言找培训机构的app
  • 澳门响应式网站建设seo入门黑帽培训教程
  • 有哪些网站可以做微商口碑营销案例2021
  • 百度推广要不要建网站网络平台建设及运营方案
  • 大型网站开发考试查网址
  • 网站建设业务市场营销论文搜索优化
  • 黄页88企业名录seo怎么优化武汉厂商
  • 触摸屏网站如何做泰州seo网络公司
  • 银川app购物网站制作公司搜狗收录入口
  • 做单页网站要多少钱wordpress免费网站
  • 网站建设性价比高优化设计官网
  • 电脑手机网站相互跳转西安seo关键词排名优化
  • 一般做网站用什么字体比较合适搜索引擎营销是什么
  • 去什么网站发贴做推广seo及网络推广招聘
  • 如何批量建站什么是互联网营销
  • 哈尔滨网站建设如何搭建一个网站平台
  • 哪些网站可以做任务网络营销推广的基本手段
  • 互联网舆情报告什么是seo营销
  • 餐饮商家做网站的好处沈阳关键词优化费用
  • 如何把网站的文字编辑网站页面优化内容包括哪些