python中的sql(pymysql和sqlalchemy)
pymysql
一、初识pymysql
#两种方式安装此模块 pip install pymysql 或者通过pycharm进行安装
# 导入pymysql
import pymysql
#创建连接
conn = pymysql.connect(host="localhost",user="root",password="123",database="day05",port = 3306
)
print(conn)
#获取游标
cur = conn.cursor()
# 编写sql语句
sql="insert into account VALUES (10,'李明',15000);"
#执行sql
cur.execute(sql)
#提交事物
conn.commit()
#关闭连接
cur.close()
conn.close()
二、pymysql的增删改查
import pymysql
conn = pymysql.connect(host = "localhost",user = "root",password = "123",database = "day05",port = 3306)
print(conn)cur = conn.cursor()id = int(input("请输入id:"))
name = input("请输入姓名:")
money = int(input("请输入钱:"))# start transaction 不用写,pymysql默认开启事务
'''
#插入语句# sql = "insert into account VALUES (%s,%s,%s);"
# sql = "insert into account VALUES (%(id)s,%(name)s,%(money)s);"
#
# # ret = cur.execute(sql,(id,name,money))
# ret = cur.execute(sql,{"id":id, "name":name,"money":money})
# print(ret)
''''''
#修改操作
sql = "update account set money =%s where NAME = %s;"
ret = cur.execute(sql,(14000,"杨洋"))
print(ret)
'''
'''
#删除操作
sql = "delete from account where money <= %s;"
ret = cur.execute(sql,10000)
print(ret)
'''#查询操作
sql = "select * from account where money<%s;"
ret = cur.execute(sql,15000)
#获取一条
# cur.fetchone()
#获取两条
# cur.fetchmoney(2)
#全部获取
c1 = cur.fetchall()
print(c1)
print(ret)conn.commit()cur.close()
conn.close()
sqlalchemy
一、sqlalchemy格式
from sqlalchemy import create_enginefrom sqlalchemy import Column,Integer,Stringfrom sqlalchemy.ext.declarative import declarative_base#1.创建引擎eng = create_engine("mysql+pymysql://root:123@localhost/day05?charset=utf8")print(eng)#2.创建基类Base = declarative_base()#3.创建类class Student(Base):__tablename__ = "children" #指定表格名称id = Column(Integer,primary_key=True,autoincrement=True)name = Column(String(32),nullable=False)email = Column(String(32),unique=True)#4.创建表格Base.metadata.create_all(eng)#5.删除表格Base.metadata.drop_all()
二、sqlalchemy中的增删改查
#sqlalchemy 和pymysql要配合使用
from sqlalchemy import create_engine
from sqlalchemy import Column,Integer,String
from sqlalchemy.ext.declarative import declarative_base#1.创建引擎
eng = create_engine("mysql+pymysql://root:123@localhost/day05?charset=utf8")
print(eng)
#2.创建基类
Base = declarative_base()#3.创建类
class Student(Base):__tablename__ = "children" #指定表格名称id = Column(Integer,primary_key=True,autoincrement=True)name = Column(String(32),nullable=False)email = Column(String(32),unique=True)#4.创建表格
# Base.metadata.create_all(eng)#5.添加记录
from sqlalchemy.orm import sessionmakerSession = sessionmaker(bind=eng)
session = Session()# student = Student(name = "刘备",email = "110@sq.com")# 创建student对象
# session.add(student) # 添加记录# session.add_all([
# Student(name='刘小争',email='120@sq.com'),
# Student(name='刘大争',email='130@sq.com'),
# Student(name='小小争',email='150@sq.com')
# ])#批量增加#查询操作student = session.query(Student).first()
print(student.id,student.name,student.email)
student2 = session.query(Student).get(ident=4)#使用唯一标示
print(student2.id,student2.name,student2.email)session.commit()#提交事务
session.close()
python中的sql(pymysql和sqlalchemy)相关推荐
- python解析sql文件_如何从Python中解析sql文件?
是否有任何方法可以从Python中执行.SQL文件中的某些SQL命令,而不是文件中的所有SQL命令?假设我有以下.sql文件:DROP TABLE IF EXISTS `tableA`; CREATE ...
- python中执行sql语句_Python执行sql语句
1.在python环境ok的情况下,需要用到pymysql模块,首先需要安装pymysql模块 在命令行中执行pip install pymysql即可 2. #! /usr/bin/env pyth ...
- python中执行sql语句_python中执行sql语句
来源:疯狂的蚂蚁的博客 总结和整理 本文介绍了 Python 操作 MYSQL.执行 SQL 语句.获取结果集.遍历结果集.取得某个字 段.获取表字段名....... (游标 对象)用于执行查询和获取 ...
- python中引入sql的优点_SQL Server 2017中的Python:增强的数据库内机器学习
Microsoft SQL Server是一款优秀的关系型数据库管理系统,Python是目前流行的数据科学语言之一,拥有丰富的库生态系统.从SQL Server 2017的CTP 2.0版本开始,可以 ...
- python中写sql语句添加for循环和变量。(一种SQL引入循环的思想实现)
为了减少代码的冗余,和脚本的运行可以在服务器上自动化,选择在sql语句中加入循环和变量.mysql常见的三种循环方式:while.repeat和loop循环.没有for,但为了方便需要引入for循环, ...
- python中引入sql的优点_引用sql-和引用sql相关的内容-阿里云开发者社区
bboss持久层改进支持模块sql配置文件引用其它模块sql配置文件中sql语句 bboss持久层改进支持模块sql配置文件引用其它模块sql配置文件中sql语句. 具体使用方法如下: <pro ...
- 编程python怎么读-python怎么读sql数据?
python中读取SQL数据的方法: python中可以使用游标cursor来读取SQL中的数据,游标cursor是由连接创建的对象,可以在游标中执行查询,并设置数据返回的格式. 当执行select语 ...
- python语法怎么读-python怎么读sql数据?
python中读取SQL数据的方法: python中可以使用游标cursor来读取SQL中的数据,游标cursor是由连接创建的对象,可以在游标中执行查询,并设置数据返回的格式. 当执行select语 ...
- python弹出警告框_selenium+webdriver+python 中警告框的处理方法
在自动化测试过程中,经常会遇到弹出警告框的情况,如图所示: 在 WebDriver 中处理 JavaScript 所生成的 alert.confirm 以及 prompt 是很简单的.具体做法是使用 ...
最新文章
- css3 动画 火箭,CSS3 火箭发射动画 寓意创新起航
- rhel6多台主机的HA集群,并实现增加仲裁盘和共享存储
- 阿里云安全送您六道平安符,恭贺新春!
- 在C#调用C++的DLL简析(二)—— 生成托管dll
- 话里话外:企业管理软件的方案设计要规避哪些风险
- android拍照截图组件,Android_Android实现从相册截图的功能,在这篇文章中,我将向大家展 - phpStudy...
- 鸿蒙WLAN模组联网+解决在Visual Studio Code不能更改Linux文件的问题
- 少儿编程线下培训水到渠成了吗?2018
- idea actiBPM插件生成png文件 (解决没有Diagrams或Designer选项问题)
- 使用RouteDebugger对MVC路由进行调试
- python手机安装不了软件怎么办_安装python安装方法
- cdn回源php_CDN回源、网站解析 是什么意思?
- 黑苹果音频卡顿_DXOMARK 公布无线音箱音质基准:苹果华为 Sonos 上榜
- emacs go-mode 设置tab宽度
- On-Ramp算法参考资料
- 硬盘变成Raw格式 与 移动硬盘报I/O错误问题
- [剑指Offer]丑数[Python]
- jQuery Mobile的学习时间botton按钮的事件学习
- 检查是否中了挖矿木马4 linux,一款新型的Linux挖矿木马来袭
- web3j错误解决:okhttp3.RequestBody.create(Ljava/lang/String;Lokhttp3/MediaType;)Lokhttp3/RequestBody