none
Classe DataSet RRS feed

  • Pergunta

  •  

    Bom dia pessoal,

     

    Percebi que na criação de um dataset eu posso codificar assim :

     

    Dim ds As New DataSet("nomeDataset")

     

    Nesse caso, qual a diferença entre "ds" e "nomeDataset"  ?

     

    Aproveitando a deixa, ja que objetos DataAdapter tem tudo haver com Datasets.....

    Eu configuro a propriedade InsertCommand de um DataAdapter seguindo as premissas abaixo, por exemplo:

     

    objDataAdapter.InsertCommand = New SqlCommand(insertSQL, objCon)

     

    Depois defino os parametros :

    Dim Param As SqlParameter

    'Define e adiciona a coluna correspondente ao campo Nome:

    Param = New SqlParameter("@Nome", SqlDbType.Char, 40)

    objDataAdapter.InsertCommand.Parameters.Add(Param)

    Param.SourceColumn = "Nome"

     

    Se eu configurar primeiro o objetoCommand com todos os parametros e depois atribuir esse a propriedade InsertCommand do DA, tem algum diferença de desempenho na execução do programa ?

     

    Obrigado pela atenção

     

     

    segunda-feira, 9 de junho de 2008 14:31

Todas as Respostas

  • Olá

     

    A diferença entre usar o contrutor "dataSetName" é para definir como elento de nível superior dentro do arquivo XML. Todo DataSet gera um arquivo XML com o relacionamento de campos e dados.

    Na pratica você só precisará usar o construtor caso tenha um DataSet tipado. Nesse caso eu já tive problemas em não "nomer" os datasets e ter inconsistencia de dados em concorrencia de dados.

     

    Em relação ao parameter o problema da ordem nem é o desempenho e sim a lógica. A forma que vc descreveu acima é o correto, primiero vc inclui o comando no objeto e depois seta os parametros. Se vc sempre usar o mesmo objeto, tente fazer de forma que crie um vez o objeto e então vc altere os valores do parameter. Ficar criando e destrindo muitas vezes na mesma instancia pode dar problema. O garbage colletor pode demorar um tempo para remover o objeto da memória e isso sim causa lentidão.

     

     

    Fui

     

    segunda-feira, 9 de junho de 2008 17:44