ERRO ao usar o COUNT() ->função de agregação no SELEC

ola

estou fazendo um programa em java
ele conecta o MYSQL (pelo conector)

meu programa aceita todas aquelas coisas que vão no SELECT
ele só não aceita a função de agregação COUNT()

alguem sabe pq?

abaixo que um pedacinhu do cod e o erro que da

GRATO!


String SQL = “select COUNT(*) from titulo”;

st = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
res = st.executeQuery(SQL); res.next();


ERRO que da

Exception occurred during event dispatching:

java.lang.ArrayIndexOutOfBoundsException: 0 >= 0
at java.util.Vector.elementAt(Vector.java:417)
at javax.swing.JTable$1.getValueAt(JTable.java:415)

Fala irmão.
Você nãoquer postar seu código aqui.
Fica mais fácil de ajudar.
Abraço.
Charles

ArrayIndexOutOfBoundsException

… algo acontece em algum array q vc está utilizando, geralemente está exception rola quando vc estoura o limite dele!!!

post todo o seu código aí !

flw!

import java.sql.;
import javax.swing.
;
import java.awt.;
import java.awt.event.
;
import java.util.*;

public class Leitura extends JFrame
{
Connection conexao;
JTable tab;

public static void main(String args[])
{
JFrame Janela = new Leitura();
Janela.show();
WindowListener x = new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
};
Janela.addWindowListener(x);
}

public Leitura()
{
setTitle( “Tabela de Filmes” );
setSize(600,300);
try
{
Class.forName( “org.gjt.mm.mysql.Driver” );
String serverName = “localhost”;
String mydatabase = “tst1”;
String username = “paullohf”;
String password = “alwino”;
String url = “jdbc:mysql://” + serverName + “/” + mydatabase;
conexao = DriverManager.getConnection(url, username, password);
System.out.println("CONECTADO AO BANDO DE DADOS: "+mydatabase);
}
catch (ClassNotFoundException cne)
{
System.out.println(“Erro ao carregar o driver JDBC”);
}
catch (SQLException sqlne )
{
System.out.println(“Problemas na Conexão”);
}
buscaTabela();
}

private void buscaTabela()
{
Statement st;
ResultSet res;
try
{
Vector cabecalho = new Vector();
Vector linhas = new Vector();
String SQL = “selectCOUNT(*)from titulo”;

   st = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
   //st = conexao.createStatement();
   res = st.executeQuery(SQL);	res.next();
   /*if (res.next()) {
            int count = res.getInt(1);
            System.out.println("Problemas na Conexão=>>>>>>>>>>>>>>>>>>>>"+res.getInt(1));
        }
   System.out.println("Problemas na Conexão=>>>>>>>>>>>>>>>>>>>>"+res.getInt(1));  */


   // busca os cabeçalhos
   ResultSetMetaData rsmd = res.getMetaData();
   for ( int i = 1; i <= rsmd.getColumnCount(); ++i ){
      cabecalho.addElement( rsmd.getColumnName( i ) );
      }
   // busca dados das linhas
   do
    {
    linhas.addElement( proximaLinha( res, rsmd ) );
    }
   while ( res.next() );

   // Mostra a tabela com cabeçalhos e registros
   tab = new JTable( linhas, cabecalho );
   JScrollPane scroller = new JScrollPane( tab );
   getContentPane().add(scroller, BorderLayout.CENTER);
   validate();

   st.close();
   }
  catch (SQLException sqlex)
    { }

}

private Vector proximaLinha(ResultSet rs, ResultSetMetaData rsmd )
{
Vector LinhaAtual = new Vector();
try
{
for ( int i = 1; i <= rsmd.getColumnCount(); ++i )
{
switch( rsmd.getColumnType(i))
{ //System.out.println("========>"+rs.getString(i));
case Types.VARCHAR:
LinhaAtual.addElement(rs.getString(i));break;
case Types.INTEGER:
LinhaAtual.addElement(new Long(rs.getLong(i)));break;
case Types.TIMESTAMP:
LinhaAtual.addElement(rs.getDate(i));break;

 }
 }
}
catch(SQLException e) {}
return LinhaAtual;

}
}