Asignar un esquema XML a un campo de BD
En este tema explicamos cómo asignar un esquema a un campo que está definido de forma nativa como tipo XML en la base de datos. Para explicarlo usamos SQL Server 2017 y la base de datos Adventure Works 2014. Esta última se puede descargar de la página de muestras de Adventure Works en GitHub (https://github.com/Microsoft/sql-server-samples/releases/tag/adventureworks). Recuerde que la asignación de datos a campos XML funciona igual que la asignación a otros tipos de base de datos que admiten campos XML.
Para agregar la base de datos Adventure Works 2014 como componente de asignación:
1.En el menú Insertar haga clic en el comando Base de datos. Siga los pasos del Asistente para conectarse a la base de datos con ADO o con ODBC. Para más información consulte los temas Conectarse a Microsoft SQL Server (ADO) y Conectarse a Microsoft SQL Server (ODBC). Nota: si usa el controlador SQL Server Native Client, quizás necesite establecer un carácter de espaciado como valor de la propiedad Seguridad integrada (véase Configurar las propiedades de vínculo de datos de SQL Server).
2.En el cuadro de diálogo "Insertar objeto de base de datos" expanda el esquema Production y después marque la casilla de la tabla ProductModel.
3.Para terminar haga clic en Aceptar.
La tabla de base de datos se añade al área de asignación. Observe que esta tabla tiene dos campos de tipo XML, CatalogDescription e Instructions:
Para que la estructura de los campos XML aparezcan en la asignación es necesario el esquema XML del contenido del campo. Haga clic con el botón derecho en el campo Instructions y seleccione Asignar esquema XML al campo en el menú contextual.
En este ejemplo concreto asignaremos un esquema al campo Instructions desde la BD directamente. Para ello seleccionamos el elemento Production.ManuInstructionsSchemaCollection en el cuadro combinado de la opción Base de datos: y hacemos clic en Aceptar.
La estructura del campo XML ya aparece en el componente y se pueden crear conexiones (y asignaciones de datos) entre este campo y otros elementos.