python连接PostgreSQL数据库的过程详解
1. 常⽤模块
# 连接数据库
connect()函数创建⼀个新的数据库连接对话并返回⼀个新的连接实例对象
PG_CONF_123 = {
'user':'emma',
'port':123,
'host':'192.168.1.123',
'password':'emma',
'database':'dbname'}
conn = t(**PG_CONF_123)
# 打开⼀个操作整个数据库的光标
连接对象可以创建光标⽤来执⾏SQL语句
cur = conn.cursor()
# 执⾏⼀个创建表的SQL语句
光标可以使⽤execute()和executemany()函数
# 传递参数给插⼊语句
# 执⾏查询语句并将获取到的数据作为python对象
cur.fetchone()
python新手代码userid
(1, 100, "abc'def")
# 提交修改
如果只使⽤查询语句不⽤commit⽅法,insert/update/delete等操作需要调⽤commit()。rollback()函数⽤于会滚到上次调⽤commit()⽅法之后。
connmit()
# 关闭数据库连接
cur.close()
conn.close()
2. 防范SQL注⼊漏洞
典型的SQL注⼊漏洞形式:
SQL = "select * from userinfo where id = '%s'" % (id)
SQL = "select * from userinfo where id = '{}'".format(id)
如果有⼈恶意攻击,在传⼊参数的代码中加⼊恶意代码,如:
request.id = '123; drop tabel userid;'
会造成严重风险,为防⽌此问题,应该通过第⼆位变量传⼊参数的⽅法:%s(⽆论变量是什么数据类型,都使⽤%s)
SQL = "INSERT INTO authors (name) VALUES (%s);" # Note: no quotes
data = ("O'Reilly", )
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。