Pregunta

Tengo una aplicación web que tiene el requisito de tomar datos de un libro de Excel y cargarlos en la base de datos. Estoy usando ADO.NET 2.0 y necesito usar DataSet / DataTable / DataAdapter / etc. para realizar esta tarea.

También tenemos el requisito de verificar los datos antes de que se carguen e informar al usuario si hay violaciones de restricciones de PK / FK / Unique / Other.

Actualmente, estamos cargando los datos de Excel en un DataTable y obteniendo los datos de la base de datos en otro DataTable, fusionando las dos tablas y (si todo se fusionó exitosamente) luego actualizamos la base de datos.

¿Puedo usar métodos en DataTable o DataSet (u otra estructura de datos ADO.Net) para verificar las restricciones PK / FK / Unique / Other? ¿Cuál sería el flujo de trabajo recomendado para cargar los datos a la base de datos según mis requisitos?

¿Fue útil?

Solución

  

¿Puedo usar métodos en DataTable o   DataSet (u otro dato ADO.Net)   estructura) para comprobar   PK / FK / Único / Otras restricciones?

No lo creo. En su lugar, puede iniciar la transacción y capturar todas las SqlException -s.

A continuación, puede consultar Number de la excepción para ver qué tipo de error es (violación de FK, restricción única, etc.)

  

¿Cuál sería el flujo de trabajo recomendado?   para subir los datos a la base de datos   dados mis requisitos?

También puede considerar el uso de Sql Server Integration Services. Te permite hacer casi todo.

Otros consejos

Lo que describe es un " estándar " Trabajo de etl Aunque puede hacerlo con scripts personalizados, hay herramientas disponibles que le permiten centrarse en el trabajo en sí, en lugar de desarrollo personalizado. Existe el oracle data integrator y suite Pentaho (fuente abierta) disponible para descarga y juicio.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top