Entrada #4 - 10/4/2024 - 4:00pm a 5:35pm
Realizamos la carga a algunas clases desde el XML, el código para cargar es:
BEGIN
DECLARE @XML AS XML
SELECT @XML = BulkColumn
FROM OPENROWSET(BULK 'D:\S3\Datos\Datos.xml', SINGLE_BLOB) AS x;
-- Insertar los datos del archivo XML en las tablas
INSERT INTO dbo.Puesto([Nombre]
, [SalarioxHora])
SELECT
Elemento.value('@Nombre'
, 'VARCHAR(64)') AS Nombre,
Elemento.value('@SalarioxHora',
'money') AS SalarioxHora
FROM @XML.nodes('/Datos/Puestos/Puesto')
AS T(Elemento)
--
INSERT INTO dbo.TipoEvento([Id],[Nombre])
SELECT
Elemento.value('@Id'
, 'int') AS Id,
Elemento.value('@Nombre'
, 'VARCHAR(64)') AS Nombre
FROM @XML.nodes('/Datos/TiposEvento/TipoEvento')
AS T(Elemento)
--
INSERT INTO dbo.TipoMovimiento([Id],[Nombre],
[TipoAccion])
SELECT
Elemento.value('@Id'
, 'int') AS Id,
Elemento.value('@Nombre'
, 'VARCHAR(64)') AS Nombre,
Elemento.value('@TipoAccion'
, 'VARCHAR(64)') AS TipoAccion
FROM @XML.nodes('/Datos/TiposMovimientos/TipoMovimiento')
AS T(Elemento)
--
INSERT INTO dbo.Error([Codigo],
[Descripcion])
SELECT
Elemento.value('@Codigo'
, 'int') AS Codigo,
Elemento.value('@Descripcion'
, 'VARCHAR(64)') AS Descripcion
FROM @XML.nodes('/Datos/Error/error')
AS T(Elemento)
--
INSERT INTO dbo.Usuario([Id],[Username],
[Password])
SELECT
Elemento.value('@Id'
, 'int') AS Id,
Elemento.value('@Nombre'
, 'VARCHAR(64)') AS Username,
Elemento.value('@Pass'
, 'VARCHAR(64)') AS Password
FROM @XML.nodes('/Datos/Usuarios/usuario')
AS T(Elemento)
END;
En general no tuvimos problemas, solo cambiamos algunos "IDENTITY" ya que no debían estar, nada grave, en realidad
Comentarios
Publicar un comentario