python操作postgres

背景

想在个人电脑上验证一些sql优化、各种主键的效果,只有在数据到达一定量级,才能明显的体现出来。所以第一步需要往数据库中写入大量数据

写入数据

值得注意的是,postgres建表时是区分大小写的,但是在查询的时候又是不区分大小写的,就像把写在sql里的大写自动替换成小写。

建表SQL

create table sell (
    id serial,
    name varchar,
    weight int,
    unitprice int,
    constraint sell_seq primary key (id)

)

python写入postgres脚本

# 导入psycopg2包
import time
import psycopg2
from random import choice, randint

# 连接到一个给定的数据库
conn = psycopg2.connect(database="test",
                        user="postgres",
                        password="123456",
                        host="127.0.0.1",
                        port="5432")
# 建立游标,用来执行数据库操作
cursor = conn.cursor()


def insert_batch():
    t = time.time()
    values = []
    name = "苹果 橘子 香蕉 柚子 菠萝 桃子 荔枝 龙眼 火龙果 梨子 西瓜 圣女果 榴莲 波罗蜜".split(" ")
    for i in range(10000):
        values.append("('{}',{},{})".format(choice(name), randint(1, 100), randint(1, 100)))
    sql = "insert into sell (name, weight, unitprice) values " + ",".join(values)
    cursor.execute(sql)
    conn.commit()
    print("insert batch用时: {}".format(time.time() - t))


if __name__ == '__main__':
    try:
        insert_batch()
    except Exception as e:
        # 关闭游标
        cursor.close()
        # 关闭数据库连接
        conn.close()
        raise e

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 可以使用psycopg2库来连接和操作PostgreSQL数据库。首先需要安装psycopg2库,然后可以使用其connect()函数建立连接,并使用cursor()函数创建游标来执行SQL语句。示例代码如下: ```python import psycopg2 connection = psycopg2.connect( host="hostname", database="databasename", user="username", password="password" ) cursor = connection.cursor() cursor.execute("SELECT * FROM tablename") results = cursor.fetchall() ``` 这只是一个简单的例子,可能需要根据具体情况进行调整。 ### 回答2: Python连接PostgreSQL数据库可以使用psycopg2模块来实现,步骤如下: 1. 首先,确保已经安装了psycopg2模块。可以使用pip命令来进行安装,命令如下: ``` pip install psycopg2 ``` 2. 在Python脚本中导入psycopg2模块: ```python import psycopg2 ``` 3. 使用psycopg2.connect()函数连接到PostgreSQL数据库,传入数据库的连接参数,包括数据库名称、用户名、密码、主机和端口。 ```python conn = psycopg2.connect(database="your_database", user="your_user", password="your_password", host="your_host", port="your_port") ``` 4. 创建一个游标对象,用于执行SQL语句。 ```python cursor = conn.cursor() ``` 5. 可以通过游标对象执行SQL语句,如查询、插入、更新等操作。例如,查询数据库中的数据: ```python cursor.execute("SELECT * FROM your_table") rows = cursor.fetchall() for row in rows: print(row) ``` 6. 执行完所有操作后,记得关闭游标和数据库连接。 ```python cursor.close() conn.close() ``` 以上就是使用Python连接PostgreSQL数据库的基本步骤,通过psycopg2模块提供的函数和方法,我们可以实现对数据库的各种操作。请注意,在连接数据库之前,确保正确安装和配置了PostgreSQL数据库,并拥有对应用户的访问权限。 ### 回答3: Python连接PostgreSQL数据库可以使用psycopg2库或者SQLAlchemy库。 方法一:使用psycopg2库 1. 首先,确保已经安装psycopg2库,可以使用以下命令安装: ``` pip install psycopg2 ``` 2. 导入psycopg2库: ```python import psycopg2 ``` 3. 使用以下代码连接到PostgreSQL数据库: ```python conn = psycopg2.connect( host="数据库主机名", database="数据库名称", user="用户名", password="密码" ) ``` 4. 可以使用conn.cursor()方法创建一个游标对象,用于执行SQL语句: ```python cur = conn.cursor() ``` 5. 运行SQL语句: ```python cur.execute("SELECT * FROM 表名") ``` 6. 获取结果: ```python rows = cur.fetchall() for row in rows: print(row) ``` 7. 关闭游标和连接: ```python cur.close() conn.close() ``` 方法二:使用SQLAlchemy库 1. 首先,确保已经安装SQLAlchemy库,可以使用以下命令安装: ``` pip install SQLAlchemy ``` 2. 导入SQLAlchemy库: ```python from sqlalchemy import create_engine ``` 3. 使用以下代码创建一个数据库引擎并连接到数据库: ```python engine = create_engine('postgresql+psycopg2://用户名:密码@数据库主机名:端口号/数据库名称') conn = engine.connect() ``` 例如: ```python engine = create_engine('postgresql+psycopg2://postgres:password@localhost:5432/mydatabase') ``` 4. 可以使用conn.execute()方法执行SQL语句: ```python result = conn.execute("SELECT * FROM 表名") ``` 5. 获取结果: ```python for row in result: print(row) ``` 6. 关闭连接: ```python conn.close() ``` 以上就是使用Python连接PostgreSQL数据库的一种常见方法。当然,根据具体情况,还可以进行更多的配置和操作

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值