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

Oracle SQL Developer连接PostgreSQL后无法增删改记录求助

Oracle SQL Developer 连接 PostgreSQL 后无法执行增删改操作的解决方案
  • 权限校验
    首先确认连接所用的 PostgreSQL 账号具备目标表的INSERT/UPDATE/DELETE权限,可在 SQL 工作表执行如下语句验证权限:
    SELECT table_schema, table_name, privilege_type 
    FROM information_schema.table_privileges 
    WHERE grantee = '你的连接用户名';
    
    若权限缺失,使用高权限账号执行授权语句:
    -- 给已有表授权
    GRANT INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA 目标schema名 TO 你的连接用户名;
    -- 给后续新建的表默认授权
    ALTER DEFAULT PRIVILEGES IN SCHEMA 目标schema名 GRANT INSERT, UPDATE, DELETE ON TABLES TO 你的连接用户名;
    
  • 事务配置检查
    Oracle SQL Developer 默认可能关闭自动提交,执行 DML 后需要手动提交才会生效:
    1. 打开「工具」-「首选项」-「数据库」-「高级」,勾选自动提交SQL语句可默认自动提交
    2. 未开启自动提交时,每次执行 DML 后手动运行COMMIT;语句即可生效
  • JDBC 连接参数优化
    在连接配置的自定义 JDBC URL 中添加stringtype=unspecified参数,避免 PostgreSQL 类型校验不通过导致 DML 执行失败,URL 参考格式:
    jdbc:postgresql://<PG主机地址>:<端口>/<数据库名>?stringtype=unspecified
    
  • 可视化编辑限制排查
    Oracle SQL Developer 的可视化表格编辑功能(直接点击单元格修改数据)要求目标表必须存在主键或唯一非空约束,如果是无主键表、视图,可视化编辑按钮默认禁用,可手动编写 DML 语句执行,或者给目标表添加主键即可恢复可视化编辑能力。
  • 锁冲突排查
    执行如下语句查询是否存在阻塞你的 DML 操作的锁:
    SELECT * FROM pg_locks WHERE NOT granted;
    
    存在阻塞锁时,释放对应会话或等待锁释放即可恢复 DML 执行能力。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 18:36:04