Ajuda com sql

3 respostas
fabiodurgante

tenho um metodo que me retorna um resultset de objetos para fazer a consulta na tabela aparece quantos NOMES tem no banco ai tudo certo aieeu quero selecionar 3 dessas linhas da tabela e jogar em outra tabela

adicionei o checkbox na tabela e consigo pegar os codigos das linhas selecionada pelo checkbox porem eu nao consigo fazer o sql para retornar esses 3 codigos tentei o seguinte

string sql = "SELECT * FROM Contato WHERE Código = ";

            for (int i = 0; i < cod.Length-1; ) {
                i++;
                if (cod.Length == i ){
                    sql = String.Concat(sql,  Convert.ToString(cod[i]));
                }else {
                    sql = String.Concat(sql,  Convert.ToString(cod[i]),  " or codigo= ");
                  
                }

cod é um array que eu coloco nele os codigos que estao selecionados pelo checkbox selecionados na tabela e passo para esse metodo
mas na sei

como consultar por codigo sendo 3 4 5 6 codigos diferentes quantos forem selecionados na tabela ???

3 Respostas

lina

Oi,

Quando você especifica uma clausula Where para o seu select,
você está querendo dizer que gostaria que retornasse uma linha dentre a sua condição.

Ou seja, como você especificou a coluna Codigo, irá retornar apenas a linha referente a sua condição.

Para retornar 3 códigos, você deverá utilizar a “função” in :

Where Codigo in (4, 5, 6);

Tchauzin!

fabiodurgante

isso mesmo so que o problema eu nao sei qual os codigos entendeu eu tenho eles em um array COD

pode ser o codigo 15 o codigo 1 depende de qual linha foi selecionada na tabela entende

lina

Oi,

Você poderá criar um método MontaIn() fazendo algo do tipo:

String ls_value = "in (";

ArrayList
al_cod = new ArrayList();
al_cod.add(4);
al_cod.add(5);
al_cod.add(8);
al_cod.add(9);
		
for (int ln = 0; ln < al_cod.size(); ls_value += al_cod.get(ln++)+",");
		
System.out.println(ls_value.substring(0,ls_value.length()-1)+")");

Tchauzin!

Criado 15 de março de 2010
Ultima resposta 15 de mar. de 2010
Respostas 3
Participantes 2