Função DATE no HSQLDB

4 respostas
Danilo_Carvalho

Bom dia!

Atualmente estou mudando todo sistema para hsqldb, mas estou tendo problema com a função Date.

Utilzo JBoss, Seam, xhtml com richfaces e Hiberante, portanto HQL.

Nos HQLs onde possue a função data como por exemplo

"	DATE(dateInitial) = DATE(:date) " +

O erro é esse abaixo:

Caused by: org.hsqldb.HsqlException: user lacks privilege or object not found: DATE

dizendo que não tenho privilégio ao objeto DATE.

Alguém já passou por isso e pode me ajudar.

Obrigado.

4 Respostas

DaniloAndrade

Danilo Carvalho:
Bom dia!

Atualmente estou mudando todo sistema para hsqldb, mas estou tendo problema com a função Date.

Utilzo JBoss, Seam, xhtml com richfaces e Hiberante, portanto HQL.

Nos HQLs onde possue a função data como por exemplo

"	DATE(dateInitial) = DATE(:date) " +

O erro é esse abaixo:

Caused by: org.hsqldb.HsqlException: user lacks privilege or object not found: DATE

dizendo que não tenho privilégio ao objeto DATE.

Alguém já passou por isso e pode me ajudar.

Obrigado.

na verdade a mensagem esta dizendo o usuário não tem privilégio ou o objeto DATE não foi encontrado

o que isso quer dizer é que essa função DATE() que vc ta usando não existe.

vc já tentou colocar apenas isso dateInitial = :date no seu hql

Danilo_Carvalho

Sim ja tentei, no momento estou colocando somente

"   dateInitial = :date " +

Mas realmente preciso comparar somente as datas pois no

query.setParameter("date", date);

passo uma data que é uma java.date.util que vem completa.

no momento estou passando a data do java.date.sql que é do tipo short

Até mais.

DaniloAndrade

Essas são algumas funçoes que vc pode usar no hql

15.10. Expressões

As expressões permitidas na cláusula where incluem o seguinte:

operadores matemáticos: +, -, *, /

operadores de comparação binários: =, >=, <=, <>, !=, like

operadores lógicos and, or, not

Parênteses ( ) que indica o agrupamento

in, not in, between, is null, is not null, is empty, is not empty, member of and not member of

case simples , case  when  then  else  end, and searched case, case when  then  else  end

concatenação de string || ou concat(,)

current_date(), current_time() e current_timestamp()

second(), minute(), hour(), day(), month() e year()

qualquer função ou operador definidos pela EJB-QL 3.0: substring(), trim(), lower(), upper(), length(), locate(), abs(), sqrt(), bit_length(), mod()

coalesce() and nullif()

str() para converter valores numéricos ou temporais para uma string de leitura

cast( as ), onde o segundo argumento é o nome do tipo hibernate, eextract( from ) se ANSI cast() e extract() é suportado pelo banco de dados adjacente

A função HQL index() , que se aplicam às referências de coleçôes associadas e indexadas

As funções HQL que retornam expressões de coleções de valores: size(), minelement(), maxelement(), minindex(), maxindex(), junto com o elemento especial, elements() e funções de índices que podem ser quantificadas usando some, all, exists, any, in.

Qualquer função escalar suportada pelo banco de dados como sign(), trunc(), rtrim() e sin()

Parâmetros posicionais ao estilo JDBC ?

Parâmetros nomeados :name, :start_date e :x1

Literais SQL foo, 69, 6.66E+2, '1970-01-01 10:00:01.0

Constantes Java final estático públicoex: Color.TABBY

mais informaçõe nesse
link
http://docs.jboss.org/hibernate/orm/3.5/reference/pt-BR/html/queryhql.html

DaniloAndrade

Essas são algumas funçoes que vc pode usar no hql

15.10. Expressões

As expressões permitidas na cláusula where incluem o seguinte:

operadores matemáticos: +, -, *, /

operadores de comparação binários: =, >=, <=, <>, !=, like

operadores lógicos and, or, not

Parênteses ( ) que indica o agrupamento

in, not in, between, is null, is not null, is empty, is not empty, member of and not member of

case simples , case  when  then  else  end, and searched case, case when  then  else  end

concatenação de string || ou concat(,)

current_date(), current_time() e current_timestamp()

second(), minute(), hour(), day(), month() e year()

qualquer função ou operador definidos pela EJB-QL 3.0: substring(), trim(), lower(), upper(), length(), locate(), abs(), sqrt(), bit_length(), mod()

coalesce() and nullif()

str() para converter valores numéricos ou temporais para uma string de leitura

cast( as ), onde o segundo argumento é o nome do tipo hibernate, eextract( from ) se ANSI cast() e extract() é suportado pelo banco de dados adjacente

A função HQL index() , que se aplicam às referências de coleçôes associadas e indexadas

As funções HQL que retornam expressões de coleções de valores: size(), minelement(), maxelement(), minindex(), maxindex(), junto com o elemento especial, elements() e funções de índices que podem ser quantificadas usando some, all, exists, any, in.

Qualquer função escalar suportada pelo banco de dados como sign(), trunc(), rtrim() e sin()

Parâmetros posicionais ao estilo JDBC ?

Parâmetros nomeados :name, :start_date e :x1

Literais SQL foo, 69, 6.66E+2, '1970-01-01 10:00:01.0

Constantes Java final estático públicoex: Color.TABBY

mais informaçõe nesse
link
http://docs.jboss.org/hibernate/orm/3.5/reference/pt-BR/html/queryhql.html

Criado 30 de janeiro de 2013
Ultima resposta 30 de jan. de 2013
Respostas 4
Participantes 2