首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >为什么在我的Rails索引中没有得到任何索引定义-- "# unrecognized schema.db ...“

为什么在我的Rails索引中没有得到任何索引定义-- "# unrecognized schema.db ...“
EN

Stack Overflow用户
提问于 2011-02-18 15:06:21
回答 1查看 362关注 0票数 1

Rails 2.3.5,Postgres后端,具有对外部Oracle数据库的一些只读访问权限。

我的schema.db文件没有获得任何索引定义。相反,我在schema.db中得到的代码行如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# unrecognized index "auditable_index" with type ActiveRecord::ConnectionAdapters::IndexDefinition 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-02-22 20:15:43

Rails 2.3.5不完全支持开箱即用的Oracle。使用schema格式而不是schema.rb应该可以解决这个问题。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
config.active_record.schema_format = :sql

我认为Oracle增强的gem支持正确的Oracle索引生成,但我从未使用过它。如果您不想更改模式格式,可能值得一试。

https://github.com/rsim/oracle-enhanced

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5042889

复制
相关文章
【DB笔试面试565】在Oracle中,为什么索引没有被使用?
“为什么索引没有被使用”是一个涉及面较广的问题。有多种原因会导致索引不能被使用。首要的原因就是统计信息不准,第二原因就是索引的选择度不高,使用索引比使用全表扫描效率更差。还有一个比较常见的原因,就是对索引列进行了函数、算术运算或其他表达式等操作,或出现隐式类型转换,导致无法使用索引。还有很多其它原因会导致不能使用索引,这个问题在MOS(MOS即My Oracle Support)“文档1549181.1为何在查询中索引未被使用”中有非常详细的解释,作者已经将相关内容发布到BLOG(http://blog.itpub.net/26736162/viewspace-2113670/)上了。下面是一些非常有用的检查项目。
AiDBA宝典
2019/09/29
1.2K0
【DB笔试面试565】在Oracle中,为什么索引没有被使用?
这个sql为什么没有用到索引
用户users 表中对 create_time 字段建有索引 现在查询某个时间段的用户,通过explain发现下面这个sql 没有用到索引 explain select * from user
dys
2018/04/02
1.3K0
这个sql为什么没有用到索引
[MySQL] 索引中的b树索引
1.索引如果没有特别指明类型,一般是说b树索引,b树索引使用b树数据结构存储数据,实际上很多存储引擎使用的是b+树,每一个叶子节点都包含指向下一个叶子节点的指针,从而方便叶子节点的范围遍历
唯一Chat
2019/09/10
1.4K0
为什么我使用了索引,查询还是慢?
经常有朋友问到:我的一个SQL语句使用了索引,为什么还是会进入到慢查询之中呢?今天我们就从这个问题开始来聊一聊索引和慢查询。
java进阶架构师
2020/11/04
5580
为什么我使用了索引,查询还是慢?
为什么我使用了索引,查询还是慢?
点击上方蓝色“程序猿DD”,选择“设为星标” 回复“资源”获取独家整理的学习资料! 作者 | 张飞洪 来源 | cnblogs.com/jackyfei/p/12122767.html 经常有同学问我,我的一个SQL语句使用了索引,为什么还是会进入到慢查询之中呢?今天我们就从这个问题开始来聊一聊索引和慢查询。 另外插入一个题外话,个人认为团队要合理的使用ORM,可以参考 ORM的权衡和抉择。合理利用的是ORM在面向对象和写操作方面的优势,避免联合查询上可能产生的坑(当然如果你的Linq查询能力很强另当
程序猿DD
2023/04/17
2320
为什么我使用了索引,查询还是慢?
为什么我使用了索引,查询还是慢?
经常有同学疑问,为什么有时候一个SQL语句使用了索引,为什么还是会进入到慢查询之中呢?今天我们就从这个问题开始来聊一聊索引和慢查询。
青阳
2022/02/07
1K0
MySQL索引中的前缀索引和多列索引
正确地创建和使用索引是实现高性能查询的基础,本文笔者介绍MySQL中的前缀索引和多列索引。
玖柒的小窝
2021/11/06
4.4K0
为什么我使用了索引,查询还是慢?
首先SQL判断一个语句是不是慢查询语句,用的是语句的执行时间。他把语句执行时间跟long_query_time这个系统参数作比较,如果语句执行时间比它还大,就会把这个语句记录到慢查询日志里面,这个参数的默认值是10秒。当然在生产上,我们不会设置这么大,一般会设置1秒,对于一些比较敏感的业务,可能会设置一个比1秒还小的值。
Java_老男孩
2020/02/18
2.4K0
为什么我使用了索引,查询还是慢?
为什么你创建的数据库索引没有生效?
几乎所有的小伙伴都可以随口说几句关于创建索引的优缺点,也知道什么时候创建索引能够提高我们的查询性能,什么时候索引会更新,但是你有没有注意到,即使你设置了索引,有些时候索引他是不会生效的!这不仅考察了大家对索引的了解程度,还要让大家在使用的时候能够正确的使用。以下介绍了一些可能会造成索引失效的特殊情况,希望大家在平时开发和面试的时候能够注意到!
Java后端技术
2018/08/09
1.8K0
为什么你创建的数据库索引没有生效?
[mysql] join查询没有走索引的原因
在join之后On的条件,类型不同是无法走索引的,也就是说如果on A.id = B.id,虽然A表和B表的id都设置了索引,但是A表的id是Int,而B表的id是varchar,则无法走索引
唯一Chat
2021/06/22
1.2K0
我秃了!唯一索引、普通索引我该选谁?
提到唯一索引和普通索引,相信大家都不陌生,当同事小姐姐问你这俩有什么区别时?或许你会脱口而出:“这还用问?见名知意啊,一个是允许字段重复,一个不允许存在重复数据!”
陈哈哈
2021/12/31
3050
我秃了!唯一索引、普通索引我该选谁?
Mysql中的索引
Mysql索引类型 Primary key/主键索引,Innodb 中又叫聚簇索引,InnoDB存储引擎的表会存在主键(唯一非null),如果建表的时候没有指定主键,则会使用第一非空的唯一索引作为聚集索引,否则InnoDB会自动帮你创建一个不可见的、长度为6字节的row_id用来作为聚集索引。 单列索引:索引中只包含一个列。 组合索引:在多个字段上建立的索引,只有在查询条件中顺序的使用了这些索引,索引才有效果。使用组合索引遵循最左前缀原则。 Unique(唯一索引):索引列必须唯一,但允许有空值,若是组合索
入门笔记
2022/06/02
3.3K0
Mysql中的索引
在Oracle中,索引是否必须定期重建?索引重建有哪些影响?
一般而言,极少需要重建B树索引,基本原因是B树索引很大程度上可以自我管理或自我平衡。认为需要重建索引的最常见理由有:
AiDBA宝典
2023/04/26
1.5K0
在Oracle中,索引是否必须定期重建?索引重建有哪些影响?
Elasticsearch——Date Math在索引中的用法详解
在elasticsearch中,有时会想要通过索引日期来筛选查询的数据,此时就需要用到日期数学表达式。 更多内容参考Elasticsearch翻译汇总 基于日期数学表达式的索引 模式如下: <static_name{date_math_expr{date_format|time_zone}}> 其中各个字段含义为: static_name 是索引的静态部分 date_math_expr 是日期的表达式 date_format 格式化,默认是YYYY.MM.dd time_zone 时区,默认是utc
用户1154259
2018/01/17
2.3K0
常见索引类型及在MySQL中的应用
索引的出现其实是为了提高数据查询的效率,就像书的目录一样,根据目录可以快速定位到内容,类比于索引,根据索引提供指向存储在表的指定列中的数据值的指针,根据指针找到包含该值的行。
关忆北.
2022/11/16
1.2K0
常见索引类型及在MySQL中的应用
Elasticsearch--Date math在索引中的使用
在Elasticsearch,有时要通过索引日期来筛选某段时间的数据,这时就要用到ES提供的日期数学表达式   描述:   特别在日志数据中,只是查询一段时间内的日志数据,这时就可以使用日期数学表达式,这样可以限制检索的索引数量,减少集群的负载,提高系统性能。   几乎所有的API都支持日期索引中的数学参数值。   基于日期数学表达式的索引: <static_name{date_math_expr{date_format|time_zone}}>   其中各个字段的含义是:   static_name
用户1174963
2018/01/17
1.9K0
为什么我使用了索引,查询还是慢?「建议收藏」
经常有同学问我,我的一个SQL语句使用了索引,为什么还是会进入到慢查询之中呢?今天我们就从这个问题开始来聊一聊索引和慢查询。 另外插入一个题外话,个人认为团队要合理的使用ORM,可以参考我的另外一篇<ORM的权衡和抉择>。合理利用的是ORM在面向对象和写操作方面的优势,避免联合查询上可能产生的坑(当然如果你的Linq查询能力很强另当别论),因为ORM屏蔽了太多的DB底层的知识内容,对程序员不是件好事,对性能有极致追求,但是ORM理解不透彻的团队更加要谨慎。
全栈程序员站长
2022/02/14
4630
为什么我使用了索引,查询还是慢?「建议收藏」
MySQL 中 SQL 语句为什么不走索引?
一条 SQL 语句的执行,主要经过两个重要的组件:1. SQL 命令解析器;2. 代价分析器;代价分析器没有在这个图中展示出来;这也是 SQL 未命中索引的关键所在。
前Thoughtworks-杨焱
2021/12/07
1.4K0
MySQL 中 SQL 语句为什么不走索引?
定义和构建索引(一)
索引是由持久类维护的结构,InterSystems IRIS®数据平台可以使用它来优化查询和其他操作。
用户7741497
2022/06/07
6270
定义和构建索引(四)
当数字数据字段用于某些数值运算时,位片索引用于该字段。位片索引将每个数值数据值表示为二进制位串。位片索引不是使用布尔标志来索引数值数据值(如在位图索引中那样),而是以二进制值表示每个值,并为二进制值中的每个数字创建一个位图,以记录哪些行的该二进制数字具有1。这是一种高度专门化的索引类型,可以显著提高以下操作的性能:
用户7741497
2022/06/08
7820

相似问题

为什么我得到未定义的索引

51

为什么我得到“未定义的索引”?

20

为什么我的日历没有在索引页面中查看: rails

23

为什么我得到了未定义的索引?

40

为什么我要得到“未定义的索引”?

52
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文