Объект SqlXmlCommand (управляемые классы SQLXML)
Так выглядит конструктор для объекта SqlXmlCommand:
public SqlXmlCommand(string cnString)
, где cnString — строка соединения ADO или OLEDB, задающая сервер, базу данных и информацию для входа в систему. Например, Provider=SQLOLEDB; Server=(local); database=AdventureWorks; Integrated Security=SSPI".
В строке соединения параметр Provider должен иметь значение SQLOLEDB, а параметр Data Provider в строку поставщика не включается).
Примеры реализации см. в разделе Выполнение запросов SQL (управляемые классы SQLXML).
Методы
Объект SqlXmlCommand поддерживает несколько методов, в том числе методы для выполнения команды:
void ExecuteNonQuery()
Выполняет команду, но не возвращает никакого результата. Этот метод полезен для выполнения команд, которые не являются запросами (то есть команд, которые ничего не возвращают). Например, выполнение диаграммы обновления или DiffGram, которая изменяет записи, но ничего не возвращает.Stream ExecuteStream()
Возвращает новый объект Stream. Этот метод полезен, если нужно вернуть результаты запроса в новом потоке. Примеры реализации см. в разделе Выполнение запросов SQL (управляемые классы SQLXML).public void ExecuteToStream(Stream outputStream)
Записывает результаты запроса в существующий поток. Этот метод удобен, если существует поток, к которому нужно добавить результаты (например, записать результаты запроса в поток System.Web.HttpResponse.OutputStream). Примеры реализации см. в разделе Выполнение запросов SQL (управляемые классы SQLXML).XmlReader ExecuteXmlReader()
Возвращает объект XmlReader. Этот метод можно использовать для непосредственной манипуляции данными в объекте XmlReader или для подключения по цепочке архитектуры System.Xml. Дополнительные сведения см. в документации по платформе Microsoft .NET Framework. Примеры реализации см. в разделе Выполнение SQL-запросов с использованием метода ExecuteXMLReader.
Объект SqlXmlCommand поддерживает также ряд дополнительных методов.
SqlXmlParameter CreateParameter()
Создает объект SqlXmlParameter. Можно задать значения для параметров этого объекта: Name и Value. Этот метод полезен для передачи параметров команды. Примеры реализации см. в разделе Выполнение запросов SQL (управляемые классы SQLXML).void ClearParameters()
Очищает параметры, созданные для данного командного объекта. Это удобно, если нужно выполнить несколько запросов, используя один и тот же командный объект.
Свойства
Объект SqlXmlCommand поддерживает также следующие свойства:
ClientSideXml
Если для этого свойства задать значение True, преобразование набора строк в XML будет происходить на клиенте, а не на сервере. Это свойство полезно, если нужно переместить вычислительную нагрузку на средний уровень архитектуры. Это свойство также позволяет оборачивать существующие хранимые процедуры в инструкции FOR XML для получения вывода в формате XML.SchemaPath
Название схемы сопоставления вместе с путем к каталогу (например, C:\x\y\MySchema.xml). Это свойство полезно для задания схемы сопоставления в запросах XPath. Может быть указан абсолютный или относительный путь. Если путь относительный, то его разрешение производится относительно базового пути, указанного в Base Path. Если базовый путь не указан, то относительный путь разрешается относительно текущего каталога. Примеры реализации см. в разделе Доступ к функциональным возможностям SQLXML в среде .NET.XslPath
Имя XSL-файла, включая путь к каталогу. Может быть указан абсолютный или относительный путь. Если путь относительный, то его разрешение производится относительно базового пути, указанного в Base Path. Если базовый путь не указан, то относительный путь разрешается относительно текущего каталога. Примеры реализации см. в разделе Применение преобразования XSL (управляемые классы SQLXML).Base Path
Базовый путь (путь к каталогу). Это свойство используется для разрешения относительного пути, заданного для XSL-файла (с использованием свойства XslPath), файла схемы сопоставления (с использованием свойства SchemaPath ) или ссылки на внешнюю схему в шаблоне XML (заданной с помощью свойства mapping-schema).OutputEncoding
Указывает кодировку потока, который возвращается при выполнении программы. С помощью этого свойства удобно задавать конкретную кодировку для возвращаемого потока. Примеры распространенных кодировок: UTF-8, ANSI и Unicode. По умолчанию используется UTF-8.Namespaces
Разрешает выполнение запросов XPath, использующих пространства имен. (Дополнительные сведения о запросах XPath, использующих пространства имен, см. в разделе Выполнение запросов XPath с пространствами имен (управляемые классы SQLXML).) Примеры реализации см. в разделе Выполнение запросов XPath (управляемые классы SQLXML).RootTag
Задает единственный корневой элемента для XML-документа, сформированного выполнением команды. У допустимого XML-документа может быть только один тег на корневом уровне. Если выполненная команда генерирует фрагмент XML (у которого нет единственного элемента верхнего уровня), можно задать корневой элемент для возвращаемого фрагмента XML. Примеры реализации см. в разделе Применение преобразования XSL (управляемые классы SQLXML).CommandText
Текст команды. Это свойство используется для задания текста команды, которую нужно выполнить. Примеры реализации см. в разделе Выполнение запросов SQL (управляемые классы SQLXML).CommandStream
Командный поток. Это свойство служит для выполнения команды из файла (например, XML-шаблона). При использовании CommandStream поддерживаются только значения типов команд "Template", "UpdateGram" и "DiffGram". Примеры реализации см. в разделе Выполнение файлов шаблонов через свойство CommandStream.CommandType
Идентифицирует тип команды. Это свойство используется для задания типа команды, которую нужно выполнить. Значения в следующей таблице задают тип команды. Примеры реализации см. в разделе Доступ к функциональным возможностям SQLXML в среде .NET.Значение
Описание
SqlXmlCommandType.Sql
Выполняет команду SQL (например, SELECT * FROM Employees FOR XML AUTO).
SqlXmlCommandType.XPath
Выполняет команду XPath (например, Employees[@EmployeeID=1]).
SqlXmlCommandType.Template
Выполняет шаблон XML.
SqlXmlCommandType.TemplateFile
Выполняет файл шаблона, расположенный по указанному пути.
SqlXmlCommandType.UpdateGram
Выполняет диаграмму обновления.
SqlXmlCommandType.Diffgram
Выполняет DiffGram.