• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >PostgreSQL > PostgreSQL ERROR: invalid escape string 解决办法

PostgreSQL ERROR: invalid escape string 解决办法

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了postgresql,postgresql教程,postgresql下载,postgresql官网,postgresql安装等相关知识,希望本文的分享对您有所帮助

今天有同事在配置PostgreSQL为Hive元数据库后,运行Hive SQL时遇到以下报错信息:

Caused by: MetaException(message:Got exception: org.apache.hadoop.hive.metastore.api.MetaException javax.jdo.JDODataStoreException: Error executing JDOQL query “SELECT “THIS”.”NAME” AS NUCORDER0 FROM “DBS” “THIS” WHERE (LOWER(“THIS”.”NAME”) LIKE ? ESCAPE ‘\\' ) ORDER BY NUCORDER0 ” : ERROR: invalid escape string
Hint: Escape string must be empty or one character..
</div>

错误信息很清楚,ESCAPE ‘\\'这里,引号内只能为一个字符,而不能是两个\。解决的办法很简单,将该JDBC用户的连接session属性standard_conforming_strings设置为off即可。

ALTER ROLE xx IN DATABASE yy SET standard_conforming_strings TO off;
</div>

错误原因说明

早期PG普通字符串中的'\'是作为转义字符对待的,所以'\\'最终会认为是'\'。但是这是不符合SQL标准的,所以在PG 9.1及以后,普通字符串中的\不会被任务是转义字符,而E'xx\x'中的\才会被当作是转义字符。为了使以前的代码可以在新的PG版本中运行,便有了standard_conforming_strings这个选项,这个选项默认是on,表示按照SQL标准处理字符串,当设置为off时,按照PG的旧版本处理字符串。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • CentOS 7下安装PostgreSQL 9.6的教程分享
  • windows PostgreSQL 9.1 安装详细步骤
  • PostgreSQL安装、配置及简单使用方法
  • Mybatis调用PostgreSQL存储过程实现数组入参传递
  • Linux CentOS 7源码编译安装PostgreSQL9.5
  • Linux CentOS 7安装PostgreSQL9.3图文教程
  • PostgreSQL中常用的时间日期脚本使用教程
  • 深入解读PostgreSQL中的序列及其相关函数的用法
  • Postgresql ALTER语句常用操作小结
  • PostgreSQL教程(二十):PL/pgSQL过程语言

相关文章

  • 2017-05-11PostgreSQL教程(十):性能提升技巧
  • 2017-05-11用PostgreSQL数据库做地理位置app应用
  • 2017-05-11PostgreSQL中常用的时间日期脚本使用教程
  • 2017-05-11PostgreSQL中关闭死锁进程的方法
  • 2017-09-08浅谈 PostgreSQL 的 timestamp 类型
  • 2017-05-11PostgreSQL中调用存储过程并返回数据集实例
  • 2017-05-11PostgreSQL教程(十九):SQL语言函数
  • 2017-05-1115个postgresql数据库实用命令分享
  • 2017-05-11PostgreSQL教程(六):函数和操作符详解(2)
  • 2017-05-11PostgreSQL教程(九):事物隔离介绍

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • PostgreSQL教程(十六):系统视图详解
    • 用一整天的时间安装postgreSQL NTFS权限
    • SQLite教程(七):数据类型详解
    • PostgreSQL教程(五):函数和操作符详解(1)
    • PostgreSQL教程(十五):系统表详解
    • PostgreSQL中关闭死锁进程的方法
    • PostgreSQL中调用存储过程并返回数据集实例
    • PostgreSQL教程(十八):客户端命令(2)
    • PostgreSQL教程(六):函数和操作符详解(2)
    • Linux CentOS 7安装PostgreSQL9.3图文教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有