上期写了一个简单的例子,基本上怎么连接和操作postgresql 算是有了开始,今天会继续看看psycopg2 操作postgresql 有什么dig deep
在DML 操作中,大部分情况都是套好“模版” 然后将实际值带入到传参,实际中postgresql 中的字段都是有不同的类型在使用,而在psycopg2中,所有的字段类型占位符均使用 %s ,而不使用 %d (int) , %f (float) 等带入。
但实际上psycopg2 中的DML 操作并不是只有这一种方式。
在psycopy 可以引入 sql 模块,可以做同样的事情。
下面我们就熟悉一下多种的 DML 的写法
1 多种insert 的写法,有的适合单条操作,有的时候多条操作,另外可以在
提交的时候,进行判断错误,并打印错误
2 update
3 delete
上面的操作基本上都是单行数据的操作,如果是批量的操作又该怎么做
实际上psycopg2 中有批量的操作,通过给定的一连串,类似数组的方式将传参批量给出,然后psycopg2 DML 操作批量来进行操作。
代码语言:javascript复制cursor.executemany()
在基于简单的DML操作后,需要对数据表进行简单的查询,下面就是一段最简单的全表select 并输出的语句,需要将
如果需要提升一个需求,limit 在查询的结果中,限制输出的数据量可以使用fetchmany(输出的记录行数)
以上的方式可以满足大多数的查询需求,但有些需求是需要将记录一次只打印一条,下一次打印下一条,这样的方式可以写一个循环,然后打印这些记录