Order By

5 respostas
R

Tenho uma consulta com “order by” que, quando é executada no SQLPlus retorna na ordem certinha, sem distinção entre maiusculas e minusculas. Quando executo esta consulta de uma classe (“rs = stmt.executeQuery()”), a ordenação muda, como se fosse case-sensitive.

Alguém pode me ajudar?

5 Respostas

J

Oi

rosi, mas que coisa estranha… POsta o teu código aí pra analisarmos pra ti.

T+

R

A consulta é:

Connection conn = null;
 PreparedStatement stmt = null;
 ResultSet rs = null;
 String query =
            " SELECT * " +
            " FROM  teste " +
            " ORDER BY descricao ";

        try
        {
            conn = getConexao();
            stmt = conn.prepareStatement(query);
            rs = stmt.executeQuery();
            ArrayList resultado = new ArrayList();
            while (rs.next())
            {
                resultado.add(rs.getString("descricao"));
            }

            resultado.trimToSize();
Esta consulta retorna:

Administrativo
Administrativo Previdenciário
Administrativo Trabalhista
Administrativo Tributário
Cível
Consumidor
Criminal
Fiscal
Judicial Previdenciário
Judicial Societário
Judicial Trabalhista
Judicial Tributário
Juizado Especial Cível
Regulatório
Trabalhista
Tributário
natureza de teste nº 1.258
rorororoor
teste2

E quando executada direto no banco:

Administrativo
Administrativo Previdenciário
Administrativo Trabalhista
Administrativo Tributário
Cível
Consumidor
Criminal
Fiscal
Judicial Previdenciário
Judicial Societário
Judicial Trabalhista
Judicial Tributário
Juizado Especial Cível
natureza de teste nº 1.258
Regulatório
rorororoor
teste2
Trabalhista
Tributário

[size="11"][color="olive"]* editado para conter BBCode - matheus[/color][/size]

E

Oi rosi,

Esse problema também aconteceu comigo, mas estava ocorrendo tanto no JAVA quanto no SQLPLUS.
Para solucionar eu coloquei a função UPPER() na cláusula ORDER BY.
No seu caso a sua cláusula ORDER BY ficaria assim:

Espero ter ajudado…

R

Eu sei que o upper resolve mas na verdade gostaria de entender o que está acontecendo…

Rodei em outra máquina com JBoss e funcionou.

A máquina onde não funciona é com Weblogic.

J

Oi

rosi, muito estranho este problema, pelo que tu disse parece ser alguma coisa no WebLogic… Não faço idéia.

:?: :?: :?: :?:

T+ :?

Criado 16 de fevereiro de 2004
Ultima resposta 17 de fev. de 2004
Respostas 5
Participantes 3