Como: Criar e executar uma demonstrativo SQL que retorna linhas

Para executar um instrução SQL que retorna linhas, você pode executar uma consulta TableAdapter que esteja configurada para executar uma instrução SQL (por exemplo, CustomersTableAdapter.Fill(CustomersDataTable)).

Se seu aplicativo não usa TableAdapters, chame o método ExecuteReader em um objeto de comando, definindo sua propriedade CommandType como Text.("Objeto de comando" refere-se ao comando específico para o .NET Framework Data Provider que seu aplicativo está usando.Por exemplo, se seu aplicativo estiver usando provedor de dados do .NET Framework para SQL Server, o objeto de comando seria SqlCommand.)

Os exemplos a seguir mostram como executar instruções SQL que retornam linhas de um banco de dados usando TableAdapters ou objetos de comando.Para obter mais informações sobre como consultar com TableAdapters e comandos, consulte Preenchendo DataSets e consultando dados de uma forma geral.

Executando instruções SQL que retornam linhas usando um TableAdapter

Este exemplo mostra como criar uma consulta TableAdapter usando o Assistente de configuração da consulta TableAdapter, e em seguida, ele fornece informações sobre como declarar uma instância do TableAdapter e executar a consulta.

Observação:

A caixa de diálogo boxe s e comandos de menu que você vê podem diferir das descritas no Help dependendo de suas configurações ativas ou edição.Para alterar as configurações, escolher Importar e exportar configurações on the Ferramentas menu.Para obter mais informações, consulte Configurações do Visual Studio.

Para criar um Instrução SQL que retorna linhas usando um TableAdapter

  1. Abra um dataset no Dataset Designer.Para obter mais informações, consulte Como: Abra um Dataset no Designer de Conjunto de Dados de Conjunto de Dados.

  2. Se você não tiver um, crie um TableAdapter.Para obter mais informações sobre como criar TableAdapters, consulte Como: Crie TableAdapters.

  3. Se você já tiver uma consulta no seu TableAdapter que usa uma instrução SQL para retornar linhas, então vá para o procedimento seguinte, "Declarar uma instância do TableAdapter e executar a consulta." Caso contrário, prossiga com a etapa 4 para criar uma nova consulta que retorna linhas.

  4. Clique com o botão direito do mouse no TableAdapter que você deseja, e use o menu de atalho para adicionar uma consulta.

    O TableAdapter Query Configuration Wizard abre.

  5. Deixe o valor padrão do Use SQL statements, e clique em Next.

  6. Deixe o valor padrão SELECT which returns rows, e clique Next.

  7. Digite sua instrução SQL, ou use o Query Builder para auxiliar na criação de uma, e clique em Next.

  8. Forneça um nome para a consulta.

  9. Conclua o assistente; a consulta é adicionada ao TableAdapter.

  10. Crie seu projeto.

Para declarar uma instância do TableAdapter e executar a consulta

  1. Declare uma instância do TableAdapter que contém a consulta que você deseja executar.

    • Para criar uma instância usando ferramentas em tempo de design, arraste o TableAdapter que você deseja a partir da Toolbox.(Os componentes no seu projeto agora aparecem no Toolbox sob um título que coincide com o nome do projeto.) Se o TableAdapter não aparecer no Toolbox, então você talvez precise criar seu projeto.

      - ou -

    • Para criar uma instância no código, substitua o código a seguir pelos nomes de seu DataSet e TableAdapter.

      Dim tableAdapter As New DataSetTableAdapters.TableAdapter

      Observação:

      Na verdade os TableAdapters não estão localizados dentro de suas classes dataset associadas.Cada dataset tem uma coleção correspondente de TableAdapters no seu próprio namespace.Por exemplo, se você tiver um dataset chamado SalesDataSet, e em seguida, deve haver um SalesDataSetTableAdapters namespace que contém seus TableAdapters.

  2. Chame sua consulta como você chamaria qualquer outro método no código.Sua consulta é um método no TableAdapter.Substitua o código a seguir pelos nomes de seu TableAdapter e de sua consulta.Você também precisa passar em quaisquer parâmetros necessários para sua consulta.Se você não tiver certeza se sua consulta requer parâmetros, ou que parâmetros requer, então, verifique o IntelliSense para a assinatura necessária da consulta.Dependendo se sua consulta usa parâmetros ou não, o código seria semelhante ao seguinte:

    TableAdapter.Query()

    TableAdapter.Query(Parameters)

    TableAdapter.Query(DataTable, Parameters)

  3. O código completo para declarar uma instância do TableAdapter e executar a consulta deve ser semelhante ao seguinte:

    Dim tableAdapter As New NorthwindDataSetTableAdapters.CustomersTableAdapter()
    tableAdapter.FillByCity(NorthwindDataSet.Customers, "Seattle")
    
    NorthwindDataSetTableAdapters.CustomersTableAdapter tableAdapter = 
        new NorthwindDataSetTableAdapters.CustomersTableAdapter();
    
    tableAdapter.FillByCity(northwindDataSet.Customers, "Seattle");
    

Executando instruções SQL que retornam linhas usando um objeto de commando

O exemplo a seguir mostra como criar um comando e executar uma intrução SQL que retorna linhas.Para obter informações sobre configurar e obter valores de parâmetro para um comando, consulte Como: conjunto e Get Parameters for Command Objects.

Este exemplo usa o objeto SqlCommand e requer:

  • Referências aos namespaces System, System.Data, System.Data.SqlClient e System.Xml.

  • Uma conexão de dados denominada sqlConnection1.

  • Uma tabela denominada Customers na fonte de dados à qual sqlConnection1 se conecta.(Caso contrário, você precisa de uma instrução SQL válida para sua fonte de dados).

Para executar um Instrução SQL que retorna linhas programaticamente usando um objeto de comando

  • Adicione o seguinte código para um método a partir do código que você deseja executar.Você retorna linhas chamando o método ExecuteReader do comando (por exemplo, ExecuteReader).Os dados são retornados em um SqlDataReader.Para obter mais informações sobre acessar os dados em um SqlDataReader, consulte Recuperando dados usando um DataReader .

    Dim sqlConnection1 As New SqlConnection("Your Connection String")
    Dim cmd As New SqlCommand
    Dim reader As SqlDataReader
    
    cmd.CommandText = "SELECT * FROM Customers"
    cmd.CommandType = CommandType.Text
    cmd.Connection = sqlConnection1
    
    sqlConnection1.Open()
    
    reader = cmd.ExecuteReader()
    ' Data is accessible through the DataReader object here.
    
    sqlConnection1.Close()
    
    SqlConnection sqlConnection1 = new SqlConnection("Your Connection String");
    SqlCommand cmd = new SqlCommand();
    SqlDataReader reader;
    
    cmd.CommandText = "SELECT * FROM Customers";
    cmd.CommandType = CommandType.Text;
    cmd.Connection = sqlConnection1;
    
    sqlConnection1.Open();
    
    reader = cmd.ExecuteReader();
    // Data is accessible through the DataReader object here.
    
    sqlConnection1.Close();
    

Segurança

O aplicativo requer permissão para acessar o banco de dados e executar a instrução SQL.

Consulte também

Tarefas

Como: Criar consultas TableAdapter

Como: Editar consultas do TableAdapter

Como: Preencher um DataSet com dados

Referência

SqlCommand.ExecuteReader

OleDbCommand.ExecuteReader

OdbcCommand.ExecuteReader

OracleCommand.ExecuteReader