Descripción de los archivos de formato XML

MicrosoftMicrosoftSQL Server 2005 y las versiones posteriores proporcionan un esquema XML que define la sintaxis par escribir archivos con formato XML. Los archivos de formato XML deben adherirse a este esquema, que se define en el lenguaje de definición de esquemas XML (XSDL). Los archivos con formato XML sólo se admiten cuando se instalan herramientas de SQL Server con SQL Server Native Client.

[!NOTA]

SQL Server 2005 y las versiones posteriores admiten dos tipos de archivos de formato. Por el contrario, MicrosoftSQL Server 2000 y las versiones anteriores sólo admitían el uso de un tipo de archivo de formato. Para distinguir el tipo preexistente de los archivos de formato XML, el tipo preexistente se denomina archivo de formato no XML.

Puede usar los archivos de formato XML para importar los datos de forma masiva en tablas o vistas sin particiones y para exportar los datos de forma masiva. Los archivos de formato XML son una alternativa a los archivos de formato no XML, admitidos en SQL Server 2000 y las versiones anteriores (y aún admitidos). Los archivos de formato XML son más flexibles y potentes que los archivos de formato no XML. Los archivos de formato XML son fáciles de entender y crear. Además, los usuarios pueden leerlos, lo que facilita la comprensión del modo en que se interpretan los datos durante las operaciones masivas. La codificación XML describe claramente los tipos de datos y elementos de datos del archivo de datos, así como la asignación entre los elementos de datos y las columnas de las tablas.

Un archivo de formato XML puede mejorarse manteniendo su compatibilidad con sus versiones anteriores. Además, la claridad de la codificación XML facilita la creación de varios archivos de formato para un determinado archivo de datos. Esto es útil si tiene que asignar todos o algunos campos de datos a columnas de diferentes tablas o vistas.

El comando bcp permite generar automáticamente un archivo de formato XML para una tabla; para obtener más información, vea bcp (utilidad).

Estructura de los archivos de formato XML

Al igual que un archivo de formato no XML, un archivo de formato XML define el formato y la estructura de los campos de datos de un archivo de datos y asigna dichos campos a columnas de una sola tabla de destino.

Un archivo de formato XML posee dos componentes principales, <RECORD> y <ROW>:

  • <RECORD> describe los datos tal como se almacenan en el archivo de datos.

    Cada elemento <RECORD> contiene un conjunto de uno o varios elementos <FIELD>. Dichos elementos corresponden a los campos del archivo de datos. La sintaxis básica es la siguiente:

    <RECORD>

       <FIELD .../> [ ...n ]

    </RECORD>

    Cada elemento <FIELD> describe el contenido de un determinado campo de datos. Un campo sólo puede asignarse a una columna de la tabla. No es necesario asignar todos los campos a columnas.

    Un campo de un archivo de datos puede tener una longitud fija o variable, o bien terminar mediante un carácter. Un valor de campo puede representarse como: un carácter (mediante una representación de un solo byte), un carácter ancho (mediante la representación Unicode de dos bytes), un formato de base de datos nativo o un nombre de archivo. Si un valor de campo se representa como un nombre de archivo, éste apunta al archivo que contiene el valor de una columna BLOB en la tabla de destino.

  • <ROW> describe el modo de construir filas de datos desde un archivo de datos cuando los datos del archivo se importan a una tabla de SQL Server.

    Un elemento <ROW> contiene un conjunto de elementos <COLUMN>. Estos elementos corresponden a las columnas de la tabla. La sintaxis básica es la siguiente:

    <ROW>

       <COLUMN .../> [ ...n ]

    </ROW>

    Cada elemento <COLUMN> puede asignarse únicamente a un campo del archivo de datos. El orden de los elementos <COLUMN> en el elemento <ROW> define el orden en el que la operación masiva los devuelve. El archivo de formato XML asigna a cada elemento <COLUMN> un nombre local que no tiene ninguna relación con la columna de la tabla de destino de una operación de importación masiva.

Temas adicionales