Postgresql数据库删除索引失败-大小写

2024-09-02 14:20

本文主要是介绍Postgresql数据库删除索引失败-大小写,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

测试环境在删除索引的时候出现如下错误,在加入双引号之后可以支持删除。

db_psis_prod=> drop index IDX_t_passenger_scs_way_id_202008;          
ERROR:  index "idx_t_passenger_scs_way_id_202008" does not exist
db_psis_prod=> 
db_psis_prod=> drop index "IDX_t_passenger_scs_way_id_202008";
DROP INDEX

默认情况下postgresql数据库存储到数据库中是以小写的形式。测试验证如下

保存的格式为大写就需要在创建的时候加双引号,删除的时候也需要加双引号。

create index ind_id on tab1(tid);
create index IND_ID2 on tab1(tid);
create index "IND_ID3" on tab1(tid);
create index "ind_id4" on tab1(tid);
create index "IND_id5" on tab1(tid);dbtest=> select * from pg_indexes where tablename='tab1';schemaname | tablename | indexname | tablespace |                        indexdef                         
------------+-----------+-----------+------------+---------------------------------------------------------public     | tab1      | ind_id    |            | CREATE INDEX ind_id ON public.tab1 USING btree (tid)public     | tab1      | IND_ID3   |            | CREATE INDEX "IND_ID3" ON public.tab1 USING btree (tid)public     | tab1      | ind_id4   |            | CREATE INDEX ind_id4 ON public.tab1 USING btree (tid)public     | tab1      | IND_id5   |            | CREATE INDEX "IND_id5" ON public.tab1 USING btree (tid)public     | tab1      | ind_id2   |            | CREATE INDEX ind_id2 ON public.tab1 USING btree (tid)
(5 rows)

drop index ind_id;
drop index IND_ID2;
drop index IND_ID3;
drop index "IND_ID3";
drop index "ind_id4";
drop index IND_id5;
drop index "IND_id5";dbtest=> drop index ind_id;
DROP INDEX
dbtest=> drop index IND_ID2;
DROP INDEX
dbtest=> drop index IND_ID3;
ERROR:  index "ind_id3" does not exist
dbtest=> drop index "IND_ID3";
DROP INDEX
dbtest=> drop index "ind_id4";
DROP INDEX
dbtest=> 
dbtest=> drop index IND_id5;
ERROR:  index "ind_id5" does not exist
dbtest=> drop index "IND_id5";
DROP INDEX
dbtest=> 

这篇关于Postgresql数据库删除索引失败-大小写的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1130203

相关文章

MySQL数据库中ENUM的用法是什么详解

《MySQL数据库中ENUM的用法是什么详解》ENUM是一个字符串对象,用于指定一组预定义的值,并可在创建表时使用,下面:本文主要介绍MySQL数据库中ENUM的用法是什么的相关资料,文中通过代码... 目录mysql 中 ENUM 的用法一、ENUM 的定义与语法二、ENUM 的特点三、ENUM 的用法1

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

Java中调用数据库存储过程的示例代码

《Java中调用数据库存储过程的示例代码》本文介绍Java通过JDBC调用数据库存储过程的方法,涵盖参数类型、执行步骤及数据库差异,需注意异常处理与资源管理,以优化性能并实现复杂业务逻辑,感兴趣的朋友... 目录一、存储过程概述二、Java调用存储过程的基本javascript步骤三、Java调用存储过程示

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

python删除xml中的w:ascii属性的步骤

《python删除xml中的w:ascii属性的步骤》使用xml.etree.ElementTree删除WordXML中w:ascii属性,需注册命名空间并定位rFonts元素,通过del操作删除属... 可以使用python的XML.etree.ElementTree模块通过以下步骤删除XML中的w:as

MySQL之InnoDB存储引擎中的索引用法及说明

《MySQL之InnoDB存储引擎中的索引用法及说明》:本文主要介绍MySQL之InnoDB存储引擎中的索引用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录1、背景2、准备3、正篇【1】存储用户记录的数据页【2】存储目录项记录的数据页【3】聚簇索引【4】二

嵌入式数据库SQLite 3配置使用讲解

《嵌入式数据库SQLite3配置使用讲解》本文强调嵌入式项目中SQLite3数据库的重要性,因其零配置、轻量级、跨平台及事务处理特性,可保障数据溯源与责任明确,详细讲解安装配置、基础语法及SQLit... 目录0、惨痛教训1、SQLite3环境配置(1)、下载安装SQLite库(2)、解压下载的文件(3)、

全面解析MySQL索引长度限制问题与解决方案

《全面解析MySQL索引长度限制问题与解决方案》MySQL对索引长度设限是为了保持高效的数据检索性能,这个限制不是MySQL的缺陷,而是数据库设计中的权衡结果,下面我们就来看看如何解决这一问题吧... 目录引言:为什么会有索引键长度问题?一、问题根源深度解析mysql索引长度限制原理实际场景示例二、五大解决

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN

MySQL追踪数据库表更新操作来源的全面指南

《MySQL追踪数据库表更新操作来源的全面指南》本文将以一个具体问题为例,如何监测哪个IP来源对数据库表statistics_test进行了UPDATE操作,文内探讨了多种方法,并提供了详细的代码... 目录引言1. 为什么需要监控数据库更新操作2. 方法1:启用数据库审计日志(1)mysql/mariad