当前位置: 首页 > 知识库问答 >
问题:

postgresql - pgsql 怎么 select 做错误处理?

黎玺
2023-10-31
begin;select  * from txt limit 1;execptionwhen undefined_table then      raise notice 'table does not exist';end

这个 pgsql 报 syntax error as or "execption" 是为什么 ?

正确应该怎么写

共有1个答案

漆雕深
2023-10-31

您的问题中的代码有几个拼写错误,导致语法错误。以下是正确的代码:

DO $$ BEGIN   BEGIN    SELECT * FROM txt LIMIT 1;  EXCEPTION    WHENUndefined_Table THEN      RAISE NOTICE 'Table does not exist';  END;END $$;

在 PostgreSQL 中,可以使用 DO 块来执行匿名代码。在 DO 块中,我们可以使用 BEGINEND 来定义一个事务块。在事务块中,我们可以执行 SQL 查询,并且可以使用 EXCEPTION 块来捕获异常。

在您的代码中,拼写错误导致语法错误。将 execption 改为 EXCEPTION 可以解决这个问题。另外,您还需要在 RAISE NOTICE 中使用正确的消息文本。

 类似资料:
  • 本文向大家介绍React v15中怎么处理错误边界?相关面试题,主要包含被问及React v15中怎么处理错误边界?时的应答技巧和注意事项,需要的朋友参考一下 React 15 中有一个支持有限的错误边界方法 unstable_handleError。此方法不再起作用,同时自 React 16 beta 发布起你需要在代码中将其修改为 componentDidCatch。

  • PostgreSQL PL/pgSQL 调试器能指导你一步一步调试 PL/pgSQL 过程或函数。若要启动调试器,请点击函数设计器内的 “调试”按钮。 你可以使用工具栏或菜单运行最常用的调试动作: 按钮 描述 运行 开始在调试模式下运行代码。如有需要,输入参数。调试器会运行你的代码直到代码结束或到达下一个断点。键盘快捷键:F9 逐过程 恢复运行。当前的行将被运行。如果该行是一个过程或函数调用,它会

  • PostgreSQL PL/pgSQL 调试器能指导你一步一步调试 PL/pgSQL 过程或函数。若要启动调试器,请点击函数设计器内的 按钮。 你可以使用工具栏或菜单运行最常用的调试动作: 按钮 描述 开始在调试模式下运行代码。如有需要,输入参数。调试器会运行你的代码直到代码结束或到达下一个断点。键盘快捷键:F9 停止逐步运行代码。运行将停止,并且无法恢复。 恢复运行。当前的行将被运行。如果该行是

  • PostgreSQL PL/pgSQL 调试器能指导你一步一步调试 PL/pgSQL 过程或函数。若要启动调试器,请点击函数设计器内的 “调试” 按钮。 你可以使用工具栏或菜单运行最常用的调试动作: 按钮 描述 运行 开始在调试模式下运行代码。如有需要,输入参数。调试器会运行你的代码直到代码结束或到达下一个断点。键盘快捷键:F9 逐过程 恢复运行。当前的行将被运行。如果该行是一个过程或函数调用,它

  • PostgreSQL SELECT 语句用于从数据库中选取数据。 结果被存储在一个结果表中,称为结果集。 语法 SELECT 语句语法格式如下: column1, column2,...columnN 为表中字段名。 table_name 为表名。 如果我们想读取表中的所有数据可以使用以下 SQL 语句: 在上一章节 INSERT INTO 语句 中,我们已经向表 company 插入了一些数据,

  • 无法连接到PostgreSQL 11。 事件,尽管服务器正在运行。我甚至安装了pgAdmin 4,访问了服务器,它工作得非常好。但当我从Rails服务器执行此操作时,它显示: 无法连接到服务器:没有这样的文件或目录 服务器是否在本地运行并接受Unix域套接字上的连接“/var/run/postgresql/.s.PGSQL.5432”? 我在Stackoverflow中尝试了所有可能的方法。连续两