加入收藏 | 设为首页 | 会员中心 | 我要投稿 北几岛 (https://www.beijidao.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Python的数据库操作(pymysql)

发布时间:2021-05-21 07:05:20 所属栏目:大数据 来源: https://www.jb51.cc
导读:使用原生 sql语句进行对数据库操作,可完成数据库表的建立和删除,及数据表内容的增删改查操作等。其可操作性很强,如可以直接使用“ show databases”、 “show tables”等语句进行表格之外的部分操作。 Centos7远程操作数据库时需要关闭防火墙,否则会连接

使用原生sql语句进行对数据库操作,可完成数据库表的建立和删除,及数据表内容的增删改查操作等。其可操作性很强,如可以直接使用“show databases”、“show tables”等语句进行表格之外的部分操作。

Centos7远程操作数据库时需要关闭防火墙,否则会连接不上

安装:

pip3 install pyMysqL

数据查询:

 1 import pyMysqL
 2 
 3 #建立数据库连接
 4 conn=pyMysqL.connect(host="192.168.1.175",port=3306,user=root2proot2dongdb")
 5 
 6 得到数据库操作游标
 7 cur=conn.cursor()
 8 
 9 查询数据
10 resdata=cur.execute(select * from tb_dong11 
12 print(总条数为:,resdata)
13 
14 一行一行输出数据,以元组形式
15 取出第一条数据:16 取出第二条数据:])
17 
18 输出剩下的所有数据,以元组嵌套形式
19 取出剩下的数据:20 
21 ------  完成操作   -------22 
23 关闭连接
24 conn.close()

通过字段名获取

建立数据库连接
conn=pyMysqL.connect(host=47.102.218.59rrtt)

得到数据库操作游标
cur=conn.cursor(cursor = pyMysqL.cursors.DictCursor)

查询数据
resdata=cur.execute(select * from ee"w]

print(user)
关闭连接
conn.close()

数据插入:

也可以使用?execute() 进行操作

插入数据
10 datax=[
11     (DXD1M东小东1),12     (DXD2F东小东213 ]
14 
返回影响行数
16 rescoun=cur.executemany(insert into tb_dong(namex,sex,otherxxx) values(%s,%s,%s)17 (rescoun)
18 
进行数据修改,必须提交事物
20 conn.commit()
21 
22 23 
24 关闭数据库连接
25 conn.close()

数据修改:

返回影响行数,如果值未进行任何修改则返回0
rescoun=cur.execute(update tb_dong set namex='%s',sex='%s' where id>%d"%(dongdong))
(rescoun)

进行数据修改,必须提交事物
conn.commit()

数据删除:

返回影响行数
rescoun=cur.execute(delete from tb_dong where id>%d"%(16))
conn.commit() 提交事物

部分封装:

 5  6 cur= 7 
 8 删除
def dongdel(tablex,idx):
10    try:
12     rescoun = cur.execute(delete from %s where id=%d" % (tablex,idx))
13     conn.commit() 提交事物
14     return rescoun
15 
16    except Exception as e:
17      删除出现错误18       e
插入
 donginsert(tablex,listx):
21  23     rescoun = cur.executemany(insert into "+tablex+(namex,listx)
    conn.commit()
25     26 
27  28       插入出现错误29       30 
31 查询,参数为表名和id值
32 def dongselect(tablex,idx=0):
33   34 
35     if idx==0:
36         resdata = cur.execute(select * from %s"%tablex)
37     else38         resdata = cur.execute(select * from %s where id=%d(tablex,1)">39      resdata
40 
41   42       查询出现错误43       44 修改
45  dongupdate(tablex,idx,namex):
46    47 
48     rescoun = cur.execute(update %s set namex='%s' where id=%d49 50     51 
52    53       更新出现错误54       55 
56 删除数据
57 resdel=dongdel(tb_dong58 删除的条数为:59 
60 
61 62 datax=63     (dongxiaodong64 65 resinsert=donginsert(66 插入的条数为:67 
68 修改数据
69 resupdate=dongupdate(dongxiaodong770 修改的条数为:71 
72 
73 74 resselect=dongselect(75 查询的总条数为:76 全部数据为:77 
78 
79 80 conn.close()

(编辑:北几岛)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读