You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从本地机器连接Heroku PG及相关配置与CRUD操作问题

连接Heroku PostgreSQL及相关操作指南

嘿,我来帮你一步步搞定这几个问题~

一、从本地机器连接Heroku PG

步骤其实很清晰,照着走就行:

  • 先确认你装了Heroku CLI,要是没装的话先补上(毕竟要和Heroku服务器交互嘛)
  • 打开终端,输入heroku login,跟着提示完成登录操作
  • 如果你已经在本地的Heroku应用目录下,直接输入heroku pg:psql就能直接连接;要是不在对应目录,就加上应用名:heroku pg:psql -a 你的应用名称,把“你的应用名称”换成你实际的Heroku app名字,执行后就能用psql操作远程数据库了
  • 要是想用可视化工具(比如DBeaver、DataGrip)连接,就输入heroku pg:credentials:url -a 你的应用名称,它会输出完整的连接信息:主机地址、端口、用户名、密码、数据库名,把这些信息填到工具的连接配置里就搞定了

二、替换whoami的内容

那个DATABASE_URL=postgres://$(whoami)是给本地没特意设置PG用户名的场景用的,你已经装了本地PostgreSQL,就得换成你本地PG的实际用户名:

  • 默认情况下,PG安装后会创建一个和你系统用户名同名的角色,要是你没修改过,whoami的输出其实就是它;但如果你自己创建了专门的PG用户,就得用这个自定义的用户名
  • 怎么查本地PG用户名?打开终端输入psql,要是能直接进入PG命令行,当前用户名就是你的系统用户名;要是进不去,试试psql -U 你的PG用户名,或者进入PG后输入SELECT current_user;就能看到当前登录的用户名
  • 最终你的本地DATABASE_URL应该写成postgres://你的本地PG用户名@localhost:5432/你的本地数据库名,别忘了把“你的本地数据库名”换成你自己创建的数据库名称,这样格式就和生产环境的DATABASE_URL完全一致了

三、执行CRUD操作

不管是连接Heroku的PG还是本地PG,CRUD都是用标准的PostgreSQL SQL命令,给你举几个常用的例子:

创建(Create)

先建表再插入数据:

-- 创建users表
CREATE TABLE users (
    id SERIAL PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    email VARCHAR(100) UNIQUE NOT NULL
);

-- 插入一条用户数据
INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com');

读取(Read)

查询数据的几种常用方式:

-- 查询所有用户信息
SELECT * FROM users;

-- 只查询id为1的用户的姓名和邮箱
SELECT name, email FROM users WHERE id = 1;

更新(Update)

修改已有数据:

-- 将id为1的用户邮箱更新为新地址
UPDATE users SET email = 'alice.new@example.com' WHERE id = 1;

删除(Delete)

删除指定数据:

-- 删除id为1的用户记录
DELETE FROM users WHERE id = 1;

要是你是在应用代码里执行CRUD,那就看你用的编程语言和ORM框架了(比如Python用Flask-SQLAlchemy,Ruby用ActiveRecord),本质都是把这些SQL逻辑封装成框架方法调用,核心逻辑是一致的。


内容的提问来源于stack exchange,提问作者Nikesh Devaki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:28:50