首页 > 数据库技术 > 详细

数据库: Python连接数据库实现增 删 改 查 操作

时间:2020-01-14 15:19:09      阅读:76      评论:0      收藏:0      [点我收藏+]

 

 

 

准备好测试的数据库

  IP: 47.92.31.46

  用户名: yang

  密码:    11223344.

  数据库名字 :  databasetest

  表格:  userinfo

  技术分享图片

 

  这是我云端电脑安装的数据库,大家都可以连接测试

  我设置了权限,只可以增删改查数据

下载包

  技术分享图片

 

 

  技术分享图片

 

  输入 pymysql

 

  技术分享图片

 

 

  技术分享图片

 

 

 

 

  技术分享图片

 

 

 

 

  技术分享图片

 

 

 

 

  技术分享图片

 

 

 

 

 

 

新建文件

  技术分享图片

 

 

  技术分享图片

 

 

连接数据库

  

import pymysql #数据库


db = pymysql.connect(host="47.92.31.41",user="yang",password="11223344.",database="databasetest",charset="utf8",use_unicode=True)
#只要执行下来就说明连接上了
print("成功连接数据库")




db.close();#关闭连接

 

 

 

技术分享图片

 

 

 

 

 

插入数据

 

  一,插入数据,id是1,用户名是yang 密码是11223344

 

  "insert into userinfo "+ " values(1,"+"‘"+ "yang" +"‘"+ "," +"‘"+"11223344"+"‘"+")";

 

  insert into userinfo : 插入数据到 userinfo 表格 

 

  1 :id的值,自动递增

 

  yang : 用户名

 

  11223344 :密码

 

  注:一般插入字符串型数据需要在数据两边加   ‘    ‘

 

  也就是  ‘数据‘

 

  

 

sql = "insert into userinfo " + " values(1," + "‘" + "yang" + "‘" + "," + "‘" + "11223344" + "‘" + ")";

cursor = db.cursor()
cursor.execute(sql)
db.commit() # 提交数据

 

 

 

技术分享图片

 

 

 

 

 

 

 

运行测试

 

  技术分享图片

 

 

 

 

 

 

 

插入数据(第二种)

 

  

 

sql = "insert into userinfo "+ " values(NULL,"+"‘"+ "yangyang" +"‘"+ "," +"‘"+"00000000"+"‘"+")";

 

 

 

 和上面相比 value(NULL.....)

 

设置第一个字段是空,意思是不填写第一个字段(默认就会自动递增)

 

技术分享图片

 

 

 

 

 

 技术分享图片

 

 

 

 

运行测试

 

 

 

  技术分享图片

 

 

 

 

 

总结上两种插入数据方式

 

  values里面的值依次填到表格中,如果数据不够,后面的就不插入数据

 

  技术分享图片

 

 

 

 

 

 

 

插入数据(第三种)

 

  

 

sql = "insert into userinfo (username,password)"+ "values(" +"‘"+ "yangyang" +"‘"+ "," +"‘"+"11111111"+"‘"+")";

 

 

 

(username,password) 后面的values里面的数据对应插到哪个字段里面

 

yangyang 插入到 username 字段里面

 

11111111 插入到 password 字段里面

 

技术分享图片

 

 

 

 

 

 

 

 

运行测试

 


 

  技术分享图片

 

删除数据

 

sql = "delete from userinfo "+" where "+"username = "+"‘"+"yang" +"‘";

 

删除 userinfo表格中 username字段中是 yang的数据

 

意思就是删除,下面这条数据

 

技术分享图片

 

 

 

 

 

技术分享图片

 

 

 

 

 

 

 

 

 

 

运行测试

 

 

 

  技术分享图片

 

 

 

 

 

 

 

sql = "delete from userinfo "+" where "+"username = "+"‘"+"yangyang" +"‘"+ " and " +"password ="+"‘"+"00000000"+"‘";

 

删除 userinfo表格中 username字段中是 yangyang,同时password字段中是 00000000 的数据

 

 

 

技术分享图片

 

 

 

 

 

 

其实就是删除这个

 

 

 

  技术分享图片

 

 

 

 

 

 

 

运行测试

 

 

 

  技术分享图片

 

 

 

 

 

 

 

 

 

 

 

修改数据

 

  

 

sql = "update userinfo set password="+"‘"+"888888"+"‘" +"where username="+"‘"+"yangyang"+"‘";

 

 

 

 找到userinfo表格中username字段值是yangyang的

 

然后把 password字段的值修改为 888888

 

其实就是把11111111修改为888888

 

技术分享图片

 

 

 

 

 

 

 

 

 

技术分享图片

 

 

 

 

 

运行测试

 

 

 

  技术分享图片

 

 

 

 

 

 

 

 

 

当然也可以直接设置

 

sql = "update userinfo set password="+"‘"+"888888"+"‘";

 

 

 

 

 

查询数据

 

sql = "select *from userinfo";#查询表格中的所有数据

try:
cursor = db.cursor()
cursor.execute(sql)
# 获取所有记录列表
results = cursor.fetchall()
for row in results:
print (row[0],row[1],row[2])
except:
print ("error")

 

 

 

 

 测试

 

  技术分享图片

 

 

 

 

 

 

 

 为直观看到下面的测试增加一个用户名和密码

 

技术分享图片

 

 

 

 

 

 

 

 

 

技术分享图片

 

 

 

 

 

 

 

查询表格中的所有username字段的值

 

技术分享图片
sql = "select username from userinfo";#查询表格中的所有username字段的值
try:
cursor = db.cursor()
cursor.execute(sql)
# 获取所有记录列表
results = cursor.fetchall()
for row in results:
print (row[0])
except:
print ("error")
技术分享图片

 


 

 

 

 运行测试

 

  技术分享图片

 

 

 

查询表格中的密码是666666的用户名

 

 

 

技术分享图片
  sql = "select username from userinfo where password = 666666";//查询表格中的密码是666666的用户名
技术分享图片

 

 

 

运行测试

 

  技术分享图片

 

 

 

//查询表格中password是666666的所有数据

 

技术分享图片
sql = "select *from userinfo where password = 666666";#查询表格中password是666666的所有用户信息
try:
cursor = db.cursor()
cursor.execute(sql)
# 获取所有记录列表
results = cursor.fetchall()
for row in results:
print (row[0],row[1],row[2])
except:
print ("error")
技术分享图片

 

 

 

运行测试

 

  技术分享图片

数据库: Python连接数据库实现增 删 改 查 操作

原文:https://www.cnblogs.com/yangfengwu/p/12191885.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!