Tenho o seguinte campo no JPA:
@Column(name = "time")
private long time = 0;
Para questões de performance fui diretamente no MySql e coloquei este campo como indice.
Existe como eu definir que este campo deve ser indexado via Annotations??
Tenho o seguinte campo no JPA:
@Column(name = "time")
private long time = 0;
Para questões de performance fui diretamente no MySql e coloquei este campo como indice.
Existe como eu definir que este campo deve ser indexado via Annotations??
Coloca assim:
@Index(name = "time")
private long time = 0;
org.hibernate.annotations.Index funciona aparentemente se eu usar apenas Hibernate para persistência.
Usando JPA não rola.
JPA é apenas uma especificação, você deve utilizar algum provider como Hibernate ou TopLink, então se você estiver usando JPA com Hibernate a anotação @Index vai funcionar.
Eu não sei se existe algum problema em ressucitar este topico !
Acredito eu que seja melhor do que criar um novo com o mesmo assunto !
Além do mais pra min não ficou claro , e o tópico não foi respondido.
Tudo bem que o Hibernate tenha a anotação , mas o JPA puro tem ?
Eu sei que é uma especificação , e fica implicito que estou perguntando em relação
a implementações como por exemplo EclipseLink.
O fato é que estou com a base de dados dos correios , e estou fazendo uma engenharia reversa !
A partir do *.mdb converti pra .mysql , e agora preciso mapear no JPA !
no squama tem os indices , eu acredito que deva seguir exatamente a forma como squema esta pois
se nao o banco vai ficar lento , são muitos registros :
no squema.sql , exemplos de criacao de tabela :
[code]DROP TABLE IF EXISTS dnecom
.LOG_FAIXA_LOCALIDADE
;
CREATE TABLE dnecom
.LOG_FAIXA_LOCALIDADE
(
LOC_NU
INT(10) NOT NULL,
LOC_CEP_INI
VARCHAR(8) NOT NULL,
LOC_CEP_FIM
VARCHAR(8) NULL,
PRIMARY KEY (LOC_NU
, LOC_CEP_INI
),
INDEX {9C6022F4-4C99-42A4-A451-E2655C
(LOC_NU
)
)
ENGINE = INNODB;
DROP TABLE IF EXISTS dnecom
.LOG_FAIXA_UF
;
CREATE TABLE dnecom
.LOG_FAIXA_UF
(
UFE_SG
VARCHAR(2) NOT NULL,
UFE_CEP_INI
VARCHAR(8) NOT NULL,
UFE_CEP_FIM
VARCHAR(8) NULL,
PRIMARY KEY (UFE_SG
, UFE_CEP_INI
)
)
ENGINE = INNODB;[/code]