Compartilhar via


Executando consultas SQL usando o método ExecuteXMLReader

Em vez de usar o método ExecuteToStream, você pode usar o método ExecuteXmlReader do objeto SqlXmlCommand para executar comandos. Esse método retorna um objeto XmlReader que pode ser usado para processamento futuro do resultado (que nesse exemplo está imprimindo o elemento ou os nomes e valores do atributo).

ObservaçãoObservação

No código, é necessário fornecer o nome da instância do Microsoft SQL Server na cadeia de conexão.

using System;
using Microsoft.Data.SqlXml;
using System.IO;
using System.Xml;
   class Test
   {
      static string ConnString = "Provider=SQLOLEDB;Server=(local);database=AdventureWorks;Integrated Security=SSPI";
      public static int testParams()
      {
         SqlXmlParameter p;
         XmlReader Reader;
         XmlTextWriter tw;
         SqlXmlCommand cmd = new SqlXmlCommand(ConnString);
         cmd.CommandText = "select FirstName, LastName from Person.Contact where LastName = ? For XML Auto";
         p = cmd.CreateParameter();
         p.Value = "Achong";
         Reader = cmd.ExecuteXmlReader();
            tw = new XmlTextWriter(Console.Out);
         Reader.MoveToContent();
         tw.WriteNode(Reader, false);
         tw.Flush();
         tw.Close();
         Reader.Close();
      
      
         return 0;
      }

      
      static int Main(string[] args)
      {
         testParams();
         return 0;
      }
   }

Para testar o aplicativo

  1. Verifique se você tem o Microsoft .NET Framework instalado em seu computador.

  2. Salve o código C# (DocSample.cs) fornecido neste tópico em uma pasta.

  3. Compile o código. Para compilar o código no prompt de comando, use:

    csc /reference:Microsoft.Data.SqlXML.dll DocSample.cs
    

    Isso cria um executável (DocSample.exe).

  4. No prompt de comando, execute DocSample.exe.