问题描述:一直用正则表达式 ('\\d{10}')来查询以数字开头的,并且是十个数字的值,‘ \\d ’代表的是以数字开头,一直都是ok的,突然有一天‘ \\d ’不再起作用,查了一上午都没发现是什么原因,问数据库管理人员才知道前天晚上数据库进行了升级,从9.1升级到了9.5.然后向这个方向去调查,发现standard_conforming_strings对‘\\’的影响。

standard_conforming_strings功能简介

如果服务器的编码格式为UTF-8 ,则应用Unicode转义。

而在Unicode转义语法中,反斜杠后的任何其他字符均按字面意义使用。因此,要包含反斜杠字符,请写两个反斜杠(\\)。即想要表达‘\d’的含义,在sql文中要写‘ \\d ’。

同样,仅在打开配置参数standard_conforming_strings时,字符串常量的Unicode转义语法才起作用。这是因为该语法可能会使解析SQL语句的客户端感到困惑,以至于可能导致SQL注入和类似的安全问题。如果参数设置为off,则此语法将被拒绝并显示一条错误消息。要从字面上包括转义字符,请将其写入两次

解决办法:sql文没有问题,或者说不改变sql文,找到postgresql.conf(路径D:\Program Files\PostgreSQL\9.6\data,PostgreSQL安装路径下的data文件夹下面)文件,设置standard_conforming_strings=on;(配置文件中standard_conforming_strings这个设置可能前面有个#,代表是注释掉的,去掉就ok了)

警告

如果配置参数standard_conforming_strings为off,则PostgreSQL可以在常规和转义字符串常量中识别反斜杠转义。但是,从PostgreSQL 9.1开始,默认值为on,这意味着仅在转义字符串常量中识别反斜杠转义。此行为更符合标准,但是可能会破坏依赖历史行为的应用程序,在该行为中始终识别出反斜杠转义符。解决方法是,可以将此参数设置为off,但是最好不要使用反斜杠转义来进行迁移。如果您需要使用反斜杠转义符来表示特殊字符,请使用编写字符串常量E

除之外standard_conforming_strings,配置参数escape_string_warning和backslash_quote还控制字符串常量中反斜杠的处理。

数据库——postgresql数据库中standard_conforming_strings对‘\\’的影响相关推荐

  1. linux postgresql 恢复数据库,PostgreSQL数据库备份和恢复

    一.备份 1.cmd到PostgreSQL安装目录bin下 2.备份命令 pg_dump -h 192.168.100.23 -U postgres postgres > D:\postgres ...

  2. Spring Boot中使用PostgreSQL数据库

    在如今的关系型数据库中,有两个开源产品是你必须知道的.其中一个是MySQL,相信关注我的小伙伴们一定都不陌生,因为之前的Spring Boot关于关系型数据库的所有例子都是对MySQL来介绍的.而今天 ...

  3. 详解PostgreSQL数据库中的两阶段锁

    点击上方"蓝字" 关注我们,享更多干货! 数据库中的对象是共享的,假如不同的用户同时修改某个对象,就会出现数据错乱,从而破坏数据库的数据一致性,违反事务的隔离性原则. 为了满足隔离 ...

  4. VS2022,C#中对PostgreSQL数据库增删改查实例记录

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.c#在VS中连接PostgreSQL数据库 二.使用步骤 1.引入库 2.设置连接 3.然后新建一个类文件,开始写 ...

  5. pg_restore - 从一个由 pg_dump 创建的备份文件中恢复 PostgreSQL 数据库。

    SYNOPSIS pg_restore [ option...] [ filename] DESCRIPTION 描述 pg_restore 是一种用于恢复由 pg_dump(1) 创建的任何非纯文本 ...

  6. Ubuntu中zabbix 4.2.6监控postgresql数据库

    实验环境: zabbix 4.2.6 postgres 9.6.6 Ubuntu 16.04 LTS 监控模板地址 :https://share.zabbix.com/index.php?option ...

  7. PostgreSQL 数据库中 DISTINCT 关键字的 4 种用法

    文章目录 DISTINCT DISTINCT ON IS DISTINCT FROM 聚合函数与 DISTINCT 大家好,我是只谈技术不剪发的 Tony 老师.PostgreSQL 不但高度兼容 S ...

  8. pg数据库执行sql文件_在linux中Postgresql数据库如何执行脚本文件

    在linux中Postgresql数据库如何恢复数据库?执行sql脚本文件呢?具体步骤如下: 一.恢复数据库备份文件 1.将数据库备份文件xxx.backup用连接工具拷贝到/opt下,这个不固定,位 ...

  9. 【PostgreSQL与UDIG】Udig导入Postgresql数据库中矢量数据无法显示的问题

    Udig导入Postgresql数据库中矢量数据无法显示的问题 编程小白,记录学习中遇到的问题,希望可以帮助到其他的人. 一.问题描述 -----首先利用PostGIS将矢量数据导入postgreSQ ...

最新文章

  1. 知识图谱升温之势已现,不要错失下一个AI风口
  2. 分布式存储 Ceph 介绍及原理架构分享--云平台技术栈系列01
  3. 【干货】Oracle数据库常用十一大操作指令
  4. 前端学习(3310):redux的state hook对象
  5. macaca使用中问题解决方法整理
  6. python循环次数查询_大数据量Mysql查询后经过循环使用python分片
  7. 1stopt(应用集锦)
  8. css实现两列容器等高布局,CSS等高布局的实现方法
  9. Intel vPro
  10. STM32F103C8T6+LD3320语音识别模块智能灯控
  11. 谷歌浏览器获取摄像头
  12. C# .Net 邮箱发送含附件方法
  13. 美白宫高级顾问遭CWA黑客组织网络攻击
  14. 剪辑视频哪个好用 简单好上手的剪辑视频软件推荐
  15. npm i安装包依赖时 gyp ERR! stack Error: Can‘t find Python executable “python“, you can set the PYTHON env
  16. HTML中的滚动条/去掉滚动条
  17. 你永远赚不到,超出认知范围外的钱
  18. 在notepad++打开文件夹目录全局替换
  19. 计算机组少年宫安全应急预案,拱墅区第十三届中小学生“运河之星”科技节紧急事件应急预案...
  20. 可调稳压电源lm317实验报告_LM317可调稳压电源制作报告

热门文章

  1. 雷军的那次「辞职」,决定了他现在的「成功」
  2. Loadrunner场景设计之场景计划
  3. matlab 绘制任意方向和位置的空间圆锥体
  4. ubuntu | 用crossover安装-微信和企业微信
  5. word中如何设置默认英文字体和中文字体
  6. Eclipes安装plugin插件
  7. php 必须实现方法,php – 错误:类必须声明为抽象或实现其余的方法
  8. css篇-盒子模型理解
  9. python-django-03-django-ORM入门
  10. java聊天室报告ppt_基于JavaWeb聊天室设计与实现毕业论文+任务书+中期表+中期报告+项目源码+数据库+答辩PPT...