Alterar jtable[Quase resolvido =( ]

no print continua vazio o campo q deveria aparecer a coluna
foi isto q tu perguntaste?

naum sei se isto vai ajudar a descobrir o erro mas coloquei o case 1 como case 3 tipo copiei exatamente a mesma coisa e funcionou
não entendi pq ?e dai o print no case 3 ficou

tipo agora so funciona o case 2 e 3!
barbaridade!!

Exatamente.
Muito estranho isto.
Faz o seguinte, pode ser problema com o StringBuilder, altera a variável sql para String mesmo e testa.

Você debugou o código? Pela saída, parece que não está passando pelo case 0 nem 1.
Coloca um default nesse case aí para ver se ele está passando por lá:

switch ... {
   // ...
   default:
      System.out.println(arg0.getColumn());
}

ok visola,
obrigada
mas olha so alem disto tm um outro probleminha tipo quand eu altero um valor na minha jtable eu altero no banco mas ele altera desordenadamente eu acho que a unica maneira de controlar isto seria usando o id mas como?
obg

visola
este system não aparece nada
=(
tipo eu usei akele cod antes dos cases,coloquei no lugar errado?
obg

Somente nos cases 0 e 1 apresenta problema?

tipo para tentar alterar de acordo com o id eu tentei fazer algo mais ou menos assim

resultado = comando.executeQuery("select Id,atividade from nota where rc_aluno='"+ t0.getText() +"'"); while(resultado.next()) { key[0][q]=resultado.getObject(1).toString(); key[1][q]=resultado.getObject(2).toString(); q++; }
antes de selecionar os itens do banco para aparecer na jtable
dai apos os cases fiz o seguinte

for(int i=0;i<key.length;i++) { if(key[i][i]!=null || key[0][i]!=null || key[1][i]!=null) { sql.append("and Id='"); sql.append(key[i][0]); sql.append("'"); sql.append(" and atividade='"); sql.append(key[i][1]); sql.append("'"); } }
só que naum da certo pq ele acaba alterando tudo por causa do for como eu faço para relacionar o id do vetor key com as colunas da jtable?
obg

sim drsmachado,
so os cases 0 e 1 que dão problema os outros funcionam,mas pq sera neh?

case 0:  
						sql.append("nota = '");  
						sql.append(table.getModel().getValueAt(table.getSelectedRow(),2 ));  
						sql.append("'");  
						break;  
					case 1:  
						sql.append("atividade = '");  
						sql.append(table.getModel().getValueAt(table.getSelectedRow(),3 ));  
						sql.append("'");  
						break;
					case 2:
						sql.append("observacao = '");  
						sql.append(table.getModel().getValueAt(table.getSelectedRow(),4 ));  
						sql.append("'");  
						break;

Já verificou se o parâmetro que você passa entra no switch?
Pois, quando checamos os cases 0, 1 e 2, nada há de errado.
Provavelmente o arg0.getColumn esteja trazendo valores maiores que 1…