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

PostgreSQL | psycopg2语句汇总

发布时间:2020-12-13 16:11:27 所属栏目:百科 来源:网络整理
导读:psycopg2是Python语言的PostgreSQL数据库接口,是对Psycopg 1.1.x版本进行的几乎完全的改写。它的主要优势在于完全支持Python DB API 2.0,以及安全的多线程支持。它适用于随时创建、销毁大量游标的、和产生大量并发INSERT、UPDATE操作的多线程数据库应用。P
psycopg2是Python语言的PostgreSQL数据库接口,是对Psycopg 1.1.x版本进行的几乎完全的改写。它的主要优势在于完全支持Python DB API 2.0,以及安全的多线程支持。它适用于随时创建、销毁大量游标的、和产生大量并发INSERT、UPDATE操作的多线程数据库应用。Psycopg包内含 ZPsycopgDA,一个Zope数据库接口。
?
1.连接PostgreSQL并设定Cursor
import psycopg2
import psycopg2.extras
 
conn = psycopg2.connect(host=‘localhost‘,port=5432,user=‘postgres‘,password=‘postgres‘,database=‘test‘)  
#输入相关数据库配置 cursor
= conn.cursor(cursor_factory=psycopg2.extras.DictCursor)
#这里创建的是一个字典Cursor,这样返回的数据,都是字典的形式,方便使用
?
?2.执行SQL脚本
cursor.execute(‘SELECT * FROM test WHERE id > %s;‘,(5,))

#有几点需要注意

1)sql脚本必须以‘;‘结尾,不可以省略
2)不管sql中有几个参数,都需要用%s代替,只有%s,不管值是字符还是数字,一律%s.
3)第二个参数中,一定要传入元组,上述例子中(5)是不行的
?
3. 得到查询结果
psycopg2提供了3种得到结果的方式,fetchone(),fetchall()和fetchmany().
?
4. 查看生成的sql脚本
cursor.mogrify(‘SELECT * FROM test WHERE a = %s AND b = %s;‘,(‘a‘,‘b‘))

5. 查看上一条执行的脚本

cursor.query

这是一个只读的属性,用以查看上次执行的sql脚本.

6. 插入数据

执行完INSERT,UPDATE,DELETE这样的sql脚本后,需要conn.commit()提交一下,才会把数据提交到数据库当中. 切记.

(编辑:李大同)

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

    推荐文章
      热点阅读