mysql - 在JDO中定义基于哈希的索引

标签 mysql sql google-app-engine jdo google-cloud-sql

我有一个需要索引的字段。该字段仅用于相等过滤器和连接,因此将其保存为哈希索引会更有效。我在 jdo 文档中找不到执行此操作的任何标准方法(这是有道理的,因为这是一个非常低级的事情)。有没有办法在 datanucleus 中使用 POJO 注释来做到这一点?

其他信息:我正在使用 datanucleus 访问 Google Cloud SQL 中的表,该表基本上是 MySql。我更喜欢 JDO 为我创建表和索引,而不是在 SQL 中显式编写 CREATE TABLE 并指定适当的索引(或稍后的 CREATE INDEX)。

编辑

我知道@Index注释,但是似乎没有办法指定你想要什么样的索引,而且我认为如果没有指定MySql将创建一个基于BTREE的索引,这不是我想要的:我需要使用基于哈希的索引(或者确信 BTREE 在相等过滤器上的哈希更有效,但我认为情况并非如此)。

最佳答案

如果您正在使用 DataNucleus JDO,那么您似乎并没有仔细查找文档 - 所有 JDO 模式控制都有文档记录。尝试这个索引 http://www.datanucleus.org/products/accessplatform/jdo/orm/constraints.html

关于mysql - 在JDO中定义基于哈希的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20919843/

相关文章:

java - 通过 JDBC 执行时 mysql LOAD DATA LOCAL INFILE 语法错误

mysql - 如何通过ssh发送sql语句到远程服务器

php - Laravel 查询 -> FIRST();

mysql - 在 mysql 中使用多个 AND 运算符过滤数据

mysql - 重复事件日历纯mysql

mysql - 在 C 中为 WinCE 使用 .NET CF dll

mysql - 强制执行取决于父列值的复合唯一约束

google-app-engine - 带有 GAE 和每分钟配额的批量电子邮件

android - googleauthutil.gettoken 超时

html - CSS 文件仅部分适用于 Google App Engine