SQL com C#

2 respostas
programação
San_n

Bom Dia Meus Caros Colegas!!!
Gostaria de mais uma vez pedir ajuda para entender detalhadamente esse método que estou postando, pois ainda sou iniciante em programação e tenho muitas duvidas.

public void consultar()
    {
        OleDbConnection con = new OleDbConnection("Provider=SQLOLEDB;Data Source=ESTAGIÁRIADESEN;Persist Security Info=True;User ID=sa;Initial Catalog=s038");
        con.Open(); 
        String sql = "SELECT * FROM CLIENTE WHERE ID_CLI = 1";
        OleDbCommand cmd = new OleDbCommand(sql, con);
        OleDbDataAdapter da = new OleDbDataAdapter(cmd);
        DataSet ds = new DataSet();
        da.Fill(ds);
        **String NOME = ds.Tables[0].Rows[0]["NOME"].ToString(); **  <-- O que exatamente esta acontecendo nessa linha? Lembrando que eu tenho uma tabela cliente com as colunas id,nome e reclamação onde apenas uma tupla esta preenchida.
        MessageBox.Show(NOME);
        con.Close();

Desde já agradeço toda ajuda!

}

2 Respostas

ressacaafu

Minha especialidade não é C#. Mas me parece que a propriedade Tables[0] está pegando a primeira tabela da consulta e Rows[0][“NOME”].ToString() está pegando na primeira linha o campo NOME, convertendo para string e setando na tua string NOME.
Tu pode buscar pelo nome da tabela e do campo também em vez de usar a posição:

dataSet.Tables["CLIENTE"].Columns["NOME"];

Referência: https://msdn.microsoft.com/pt-br/library/system.data.dataset(v=vs.110).aspx

San_n

Obrigada, é isso mesmo :slight_smile:

Criado 10 de setembro de 2018
Ultima resposta 11 de set. de 2018
Respostas 2
Participantes 2