当前位置: 首页 > 后端技术 > Python

最全总结-谈谈Python数据处理全家桶(PgSQL篇)

时间:2023-03-25 21:10:07 Python

一、前言大家好,我是安国!Python数据处理全家桶,到现在一共写了6篇,有兴趣的朋友可以去了解一下!最全总结|说说Python数据处理全家桶最全总结(Mysql篇)|说说Python数据处理全家桶最全总结(Sqlite篇)|说说Python数据处理全家桶最全总结(MongoDB篇)|说说Python数据处理全家桶最全总结(Redis篇)|浅谈Python数据处理全家桶(Memcached篇)最全总结|谈谈Python数据处理全家桶(存储过程篇)免费开源关系型数据库与最流行的Mysql数据库相比,PgSQL在可靠性、数据完整性、可扩展性等方面具有绝对优势。本文将讲讲如何使用Python操作PgSQL数据库2.PgSQL使用Python操作PgSQL,需要先安装依赖包“psycopg2”#安装依赖包pip3installpsycopg2接下来就可以使用Python操作了database2-1数据库连接和游标对象使用psycopg2中的“connect()”方法连接数据库,创建数据库连接对象和游标对象importpsycopg2#获取连接对象#database:数据库名#user:用户名#密码:password#host:数据库ip地址#port:端口号,默认为5432conn=psycopg2.connect(database="db_name",user="postgres",password="pwd",host="127.0.0.1",port="5432")#获取游标对象cursor=conn.cursor()获取到游标对象后,可以执行SQL,然后操作数据库2-2插入数据首先编写插入数据的SQL语句和参数(可选)#构建SQL语句#方法一:直接带parameterssql="INSERTINTOstudent(name,age)\VALUES(%s,'%s')"%\('xag',23)#方法二:参数分离sql??="""INSERTINTOstudent(name,age)VALUES(%s,%s)"""#Paramsparams=('xag',23)然后,使用游标对象执行SQL#Executesql#注意:params是可选的,按照上面的参数方法选择设置cursor.execute(sql,[params])然后,使用连接对象提交事务#Transaction提交conn.commit()最后,释放游标对象和数据库连接对象#释放游标对象和数据库连接对象cursor.close()conn.close()2-3查询数据游标对象的三个函数,fetchone(),fetchmany(size),fetchall(),可以实现单条数据查询和多条数据查询,全部数据查询#获取一条记录one_data=cursor.fetchone()print(one_data)#获取2条记录many_data=cursor.fetchmany(2)print(many_data)#获取所有数据all_data=cursor.fetchall()print(all_data)需要注意的是,条件查询和上面的插入操作类似,条件语句can将参数分开#条件查询SQL语句sql="""SELECT*FROMstudentwhereid=%s;"""#对应的参数,参数末尾以逗号结束params=(1,)#执行SQLcursor.execute(sql,params)#获取所有数据datas=cursor.fetchall()print(datas)2-4更新数据更新操作和上面的操作一样,唯一不同的是,执行SQL之后,需要使用连接对象提交事务,这样数据才能真正更新到数据库中defupdate_one(conn,cursor):"""更新操作"""#更新语句sql="""updatestudentsetname=%swhereid=%s"""params=('AirPython',1,)#执行语句cursor.execute(sql,params)#事务提交conn.commit()#关闭数据库连接cursor.close()conn.close()2-5删除数据删除数据类似于更新数据defdelete_one(conn,cursor):"""删除操作"""#statementandparameterssql="""deletefromstudentwhereid=%s"""params=(1,)#执行语句cursor.execute(sql,params)#提交东西conn.commit()#关闭数据库连接游标.close()conn.close()3.最后,通过上面的操作,可以发现Python操作PgSQl和Mysql类似,但是在原生SQL的写法上,两者还是有很多区别的。更多关于PgSQL的操作可以参考以下链接:https://www.postgresql.org/do...如果觉得文章还不错,请点赞分享留言,因为这将是最强的是我继续输出更多优质文章的动力!