python数据库 *** 增删改查操作

作者: 幼姿沫 | 来源:发表于2020-05-12 23:53 被阅读0次

一   *   python 连接数据库

Ⅰ  操作数据库  

1.首先下载  pip install pymysql    /  python -m pip install pymysql

2.导入模块  import pymysql

3.打开数据库建立连接  connection 对象

用于建立python与数据库的连接,创建对象的话用connect方法

conn=connect(参数列表)

参数列表内容包含*

         ·  host 连接的mysql主机 是localhost

         · port 连接的mysql主机的端口号 默认3306

          · user 数据库连接的用户名  user="root"

          ·passwd 数据库连接的密码  passwd="root"

          · db  连接的数据库名称

         ·charset  连接数据库的字符编码  utf8

4.建立游标  指针 确定对什么进行操作

5.进行相关的增删改查

6.对数据库进行提交

7.关闭游标

8.关闭数据库连接

Ⅱ  python连接数据库的完整代码

#导入模块

import pymysql

#python和数据库建立连接connect(参数)

conn=pymysql.connect(host="39.98.39.173",port=13306,user="root",passwd="root",db="杨成森",charset="utf8")

print(conn)#测试打印

print(type(conn))

#在表格中确定操作行 来建立游标指针

cur=conn.cursor()

#增删改会返回影响的行数

#执行sql语句  execute语句返回影响的行数来提示操作成功

#插入数据

#num=cur.execute("insert into student values(default,'jackson','男',20,'2020-05-30','湖北',2)")

#删除数据

#num=cur.execute("delete from student where name='小李' ")

#修改数据

num=cur.execute("update student set name='张玮' where id=2")

print("影响的总行数*",num)

#提交数据库连接

conn.commit()

#关闭游标

cur.close()

#关闭数据库连接

conn.close()

二    ***  sql中的值用占位符代替

1.导入数据库模块

2.建立数据库连接

3.建立游标指针

4.对数据库进行增删改

增删改会返回影响的行数 表格会进行改变

查看的话会返回结果数

5.对数据库进行提交

6.关闭游标

7.关闭数据库连接

①"""占位

import pymysql

conn=pymysql.connect(host="39.98.39.173",port=13306,user="root",passwd="root",db="杨成森",charset="utf8")

print(conn)

cur=conn.cursor()

sql="insert into student values (default,%s,%s,%s,%s,%s,%s)"

num=cur.execute(sql,('way','男',15,"1998-01-05","陕西",1))

print("影响的行数*",num)

if num>0:

print("数据库数据插入成功")

else:

print("数据库数据插入不成功")

conn.commit()

cur.close()

conn.close()

批量插入数据

1.导入模块

2.python连接数据库

3.建立游标指针

4.进行增删改查的操作

5.提交数据

6.关闭游标指针

7.关闭数据库连接

"""

import pymysql

#ip地址 端口号 用户名 密码 数据库 字符编码

conn=pymysql.connect(host="39.98.39.173",port=13306,user="root",passwd="root",db="杨成森",charset="utf8")

cur=conn.cursor()

sql="insert into student values(default,%s,%s,%s,%s,%s,%s)"

#批量执行

num=cur.executemany(sql,[("ammy","女",25,"1998-01-05","深圳",2),("哈伊亚","女",20,"2000-01-01","新疆",1),("haha","男",30,"1999-04-18","北京",1)])

print("批量插入影响的行数*",num)

conn.commit()

cur.close()

conn.close()

对象的方法

close()事务    关闭连接

commit()事务  需要提交才会生效的数据

rollback()事务 放弃之前的操作

cursor() 返回cursor对象  用于执行sql语句并且获得结果

来获取结果并且进行增删改查操作

execute 增insert into 表名 values 删 delete from 表名 where 条件 改 update  非查询

num=cur.execute(sql,参数)

executemany()批量执行非查询 返回的结果是影响的行数

num=cur.execute(sql,[("",""),("",""),("","")])

#查询语句  查询相关*每个方法都会导致游标移动

cur.fetchone() #抓取一条数据  抓取到数据返回元组  没有抓取到数据返回None

cur.fetchall()   #抓取所有数据

cur.fetchmany()  #抓取许多数据   抓到数据返回元组 

"""

三   *  *  查询fetch相关语句

1.导出数据库模块

2.python连接数据库

3.建立游标指针

4.执行查询

5.循环遍历里面的每条数据

6.提交数据

7.关闭游标

8.关闭连接

"""

import pymysql

import time

#查询语句消耗的时间结束时间减去开始时间

def addition():

#京东首页需要至少十几次的数据库连接 数据库连接只是需要消耗1.3秒 正规网页开始的速度<3秒

    start=time.time()

conn=pymysql.connect(host="39.98.39.173",port=13306,user="root",passwd="root",db="杨成森",charset="utf8")

print(conn)

end=time.time()

print("消耗的时间*",end-start)

#redis缓存数据库操作每秒万次读,8万次写的速度!!!

    cur=conn.cursor()#游标执行完之后没有返回值

    sql=" select *from student where name='way' and id='8' "

    cur.execute(sql)

#查询所有数据和条数

 res=cur.fetchall()                                                                                                                                                                                                                                  print("共有 %d 条数据" % len(res))

    #获得相应数量的数据 fetch(数字) #取得前n条  返回的都是元组 

     result=cur.fetchmany(3)

    print(result)

     for i in result:

           print(i)

#查询一条数据

     while 1:                                                                                                                              result=cur.fetchone()                                                                                                if result is None:                                                                                                                          break                                                                                       print(result)

#游标里面是有数据的 执行完之后 查询返回的是结果集合

    result=cur.fetchone()

#抓取一行数据

    print(result)

conn.commit()

cur.close()

conn.close()

#必须关闭 减少浪费资源空间 防止conn用户量多的时候同时访问不安全

if __name__ =='__main__':

addition()

相关文章

  • 关于python的list的增查删改

    说到增查删改,想起了数据库,我们在关系型数据库当中就会对表进行增查删改。 在python当中我们也可以对list进...

  • Python

    Python 创建文件 Python 对数据库进行操作--增删改查 Python 对csv进行操作 Python ...

  • SQL查询结构总结

    SQL 增删改查 对数据库有修改的操作是:增删改 增 insert into 表名 values(); 删 del...

  • 2018-01-11 JDBC连接数据库代码

    1.JDBC操作mysql数据库-增删改查 2.JDBC操作Oracle数据库-增删改查

  • python基础-03

    python操作mysql数据库 创建数据表 数据表的 增 删 查 改 增 查 改 删

  • 2018-07-04

    python3.6 使用 pymysql 连接 Mysql 数据库及 简单的增删改查操作 python3使用pym...

  • nodejs+mongodb

    nodejs操作 mongodb数据库增删改查 创建node增删改查执行文件

  • MYSQL数据库的增删改查

    MYSQL数据库的增删改查 一.对于库的增删改查 增create database 库名称;create data...

  • Nodejs+Mongodb

    nodejs操作 mongodb数据库增删改查 创建node增删改查执行文件 有闪电

  • mongoDB数据库的简单CRUD操作

    mongodb数据库的操作 基本的增删改查 增 增加一条文档:db.sf.insert({ :" "}) 增加多条...

网友评论

    本文标题:python数据库 *** 增删改查操作

    本文链接:https://www.haomeiwen.com/subject/etcbnhtx.html