import pymysql

  注:所有插入、修改、删除操作都必须要提交(conn.commit())

连接数据库:

conn = pymysql.connect(
host = '127.0.0.1', # localhost
user = 'root',
password = 'root',
database='lzh_db',
port=3306
)

创建一个游标:

cursor = conn.cursor()  # 创建一个游标

插入数据:

 案例一:

sql ='''
insert into user values(3,'lzh23',25,'asd');
'''
cursor.execute(sql) # 执行插入语句
conn.commit() # 提交执行

 案例二:

for i in range(4,10):
id = i
username = 'lzh' + str(i)
age = 20+i
password = 'pass'+str(i)
sql ='''
insert into user values({},'{}',{},'{}');
'''.format(id,username,age,password)
cursor.execute(sql) # 执行插入语句
conn.commit() # 提交执行

查询数据:

 fetchone() # 返回一条记录,第一次调用返回第一条,第二次调用返回第二天条

 fetchmany(n) # 返回n条满足条件的数据

 cursor.fetchall() # 返回满足条件的所有数据

 案例一:查询所有记录

cursor.execute('select * from user;')
result2 = cursor.fetchall() # 返回所有记录
# result2 = cursor.fetchmany(2) # 返回2条记录
for r in result2:
print(r)
案例二:查询指定要求的数据:查询年龄为25岁的数据
sql = '''
select * from user where age=25;
'''
cursor.execute(sql)
ret = cursor.fetchone() # 返回一条记录,第一次调用返回第一条,第二次调用返回第二天条... # 返回ID=2的记录
# ret = cursor.fetchmany(2) # 返回2条满足条件的数据
# ret = cursor.fetchall() # 返回满足条件的所有数据
ret2 = cursor.fetchone() # 返回2条满足条件的数据 # 返回 ID = 3的记录
print(ret,ret2)

删除数据:

删除id=9的记录:
sql = '''
delete from user where id=9
'''
cursor.execute(sql)
conn.commit()

修改数据:

修改id=8的年龄为22岁:
sql = '''
update user set age=22 where id=8
'''
cursor.execute(sql)
conn.commit()

关闭数据库连接:

conn.close()  # 关闭数据库连接


最新文章

  1. python Requests库在处理response时的一些陷阱
  2. 二模01day1解题报告
  3. 解决Django和EasyUI搭配使用时出现的CSRF问题
  4. 为什么需要SQL Profile
  5. ConcurrentHashMap完全解析(jdk6/7,8)
  6. 基于CSS的个人网页
  7. Win10构建Python全栈开发环境With WSL
  8. hdu1201 java
  9. c#坐标系互相转换
  10. (四)版本控制管理器之VSS
  11. docker 容器的mysql主从复制
  12. Chrome插件:弹出桌面通知
  13. redis持久化策略梳理及主从环境下的策略调整记录
  14. Django中模型层中ORM的多表操作
  15. js值类型与引用类型
  16. ngx_lua_API 指令详解(三)怎样理解 cosocket指令
  17. [LeetCode] questions conclustion_BFS, DFS
  18. keil c51笔记
  19. js数组最大值和最小值计算
  20. golang函数学习笔记

热门文章

  1. 将图片打印到word中
  2. RocketMQ应用及原理剖析
  3. ActiveMQ(三)——理解和掌握JMS(1)
  4. C/C++ Qt 数据库SqlRelationalTable关联表
  5. python数据预处理和特性选择后列的映射
  6. 赋能开发:捷码携手达内教育打造IT职业教育新生态
  7. drone 使用git tag触发构建
  8. 【C++】使用VS2022开发可以在线远程编译部署的C++程序
  9. AtCoder Beginner Contest 172 题解
  10. SpringBoot整合websocket简单示例