store Procedure

04/11/2005 - 17:36 por José Miguel | Informe spam
Hola amigos,

Esta es mi ?;

Tengo una tabla con 120 campos por cada registro. Quiero hacer un store
procedure para insertar registros en la tabla.

El problema es que no veo eficiente pasar 120 parámetros para poder
pasar los datos del insert. Si un día modifico la tabla me puedo volver
loco.

Tampoco puedo utilizar SQL dinámico ya que el insert puede llegar a
superar los 4000 caracteres.

En principio la aplicación me genera el insert y se la envió al SQL.

¿Que os parece?

Saludos y gracias

Preguntas similare

Leer las respuestas

#6 Eladio Rincón
07/11/2005 - 10:21 | Informe spam
Tratala con "cuidado" porque como siga creciendo, tarde o temprano tendrás
que replantearte el diseño; en cualquier caso, ¿podrías poner el script para
echarle un vistazo?

Gracias,

Eladio Rincón

SQL Server MVP, Mentor
Solid Quality Learning
http://www.SolidQualityLearning.com

"Solid Quality Learning is the trusted global provider of advanced education
and solutions for the entire Microsoft database platform"


"José Miguel" wrote in message
news:%
Gracias a todos por vuestro tiempo,

Eladio, tienes razon diciendo que es posible que la tabla no este en 3
forma normal. Es una tabla que almacena los contratos, pero por desgracia
no dispongo de tiempo para revisarla.

Por otra parte me voy a animar y realizare un sp para el mantenimiento de
la misma

Saludos
Respuesta Responder a este mensaje
#7 José Miguel
07/11/2005 - 11:14 | Informe spam
Pues aquí lo tienes, ya se que no es muy normal pero es lo que hay en
estos momentos.

Todavía no lo he probado

Saludos



create PROCEDURE procContratoInsert @strFirma
varchar(100),
@strCifEmpresa varchar(50),
@strRegimen varchar(255),
@strPatronal nvarchar(255),
@idPatronal int,
@intCodigoContrato int,
@strApoderado nvarchar(255),
@strNifApoderado nvarchar(255),
@strConceptoApoderado nvarchar(255),
@idEmpresa int,
@idActividadEconomicaEmpresa int,
@strPais varchar(255),
@strTrabajadoresPlantilla varchar(255),
@strTrabajadoresCentro varchar(255),
@idTrabajador int,
@strNivelEstudios varchar(255),
@strCodigoNivelEstudio nvarchar(255),
@strAsistenteLegal varchar(255),
@strDniAsistente varchar(50),
@strCalidadAsistente varchar(255),
@dtmBajaTeorica DateTime,
@strPrestaServicios varchar(255),
@strCategoria varchar(255),
@idJornada int,
@strHorasSemanales varchar(255),
@strDiaInicioSemana varchar(255),
@strDiaFinSemana varchar(255),
@idFrecuenciaHoras int,
@strHorasTiempoParcial varchar(255),
@strDiaInicioParcial varchar(50),
@strDiaFinParcial varchar(50),
@idSituacionTiempoParcial int,
@strDistribucionTiempoParcial varchar(255),
@dtmFechaPrecontrato datetime,
@dtmInicioContrato datetime,
@dtmFinContrato datetime,
@strPeriodoPrueba varchar(255),
@chkDuracionMayorPeriodoPrueba bit,
@strRetribucionBruta varchar(255),
@strFrecuenciaRetribucion varchar(255),
@strDistribucionRetribucion varchar(255),
@strVacaciones varchar(255),
@strRealizarObraServicio varchar(255) ,
@chkCircunstanciasProduccion bit,
@strCircunstanciasProduccion nvarchar(100),
@strSustitucion varchar(255),
@chkReservaPuesto bit,
@chkMaternidad bit,
@chkExcedentes bit,
@chkSustitucionTemporal bit,
@chkSustituirTrabajadoresFormacion bit,
@chkSustituirTrabajadoresMinusvalidos bit,
@chkDeterminadaSexta_ObraoServicio bit,
@chkDeterminadaSexta_AtenderExigencias bit,
@chkDeterminadaSexta_SustituirTrabajador bit,
@chkDeterminadaSexta_ReducirLaJornada bit,
@strReducirJornadaSalario varchar(255),
@strCargo varchar(255),
@strConvenio varchar(255),
@strOficina varchar(255),
@strClausulaAdicional varchar(4000), -- mirar si puede ser text
@strCiudad varchar(255),
@dtmFecha datetime,
@idEstado int ,
@idPadre int ,
@idHijo int ,
@chkPactoHoras bit ,
@chkContratoRelevo bit,
@idCampana int,
@idCliente int,
@strCentro nvarchar(255),
@strSeccionCentro nvarchar(100),
@strCampanaMerchandeco nvarchar(100),
@idCentro int,
@idCampanaTaskforce int,
@idTipoCampana int,
@idTipoContrato int,
@idTipoConvenio int,
@idTipoCategoria int,
@strCoeficiente nvarchar(50),
@blnDocumentosCentro bit,
@strObservaciones nvarchar(1000),
@idUsuarioContrata int,
@idUsuarioPrecontrata int,
@strHuellaContrato nvarchar(50),
@strHuellaSegSocialAlta nvarchar(50),
@strHuellaSegSocialBaja nvarchar(50),
@chkAnularContrato bit,
@idContratoBaja bit,
@dtmFechaBajaEfectiva datetime,
@dtmFechaComunicadoBaja datetime,
@strClienteBaja nvarchar(100),
@chkConversion bit,
@strConversionOficina nvarchar(100),
@dtmConversionConFecha datetime,
@idConversionCompletaParcial tinyint,
@dtmConversionFechaContrato datetime,
@strConversionOficinaRegistro nvarchar(100),
@dtmConversionConFechaRegistro datetime,
@strConversionHuellaContrato nvarchar(50),
@strConversionPrimeraHoras nvarchar(10),
@chkConversionPrimeraPactoHoras bit,
@chkConversionSexta1 bit,
@chkConversionSexta2 bit,
@chkConversionSeptima1 bit,
@strProrrogaOficina nvarchar(100),
@strProrrogaAcuerdan nvarchar(100),
@strProrrogaDe nvarchar(100),
@dtmProrrogaDesde datetime,
@dtmProrrogaHasta datetime,
@dtmProrrogaConFecha datetime,
@strProrrogaDuracionIni nvarchar(100),
@strProrrogaOficinaReg nvarchar(100),
@dtmProrrogaEnFechaReg datetime,
@strProrrogaNumHuella nvarchar(100),
@strProrrogaNunProrrogas nvarchar(100),
@idTipoBaja int,
@dtmFechaEfectivaVariacion datetime,
@dtmFechaModificacion datetime,
@IdUsuarioModificacion int,
@dtmFechaVariacionHijo datetime


AS
Insert into tblContrato
(
strFirma,
strCifEmpresa,
strRegimen,
strPatronal,
idPatronal,
intCodigoContrato,
strApoderado,
strNifApoderado,
strConceptoApoderado,
idEmpresa,
idActividadEconomicaEmpresa,
strPais,
strTrabajadoresPlantilla,
strTrabajadoresCentro,
idTrabajador,
strNivelEstudios,
strCodigoNivelEstudio,
strAsistenteLegal,
strDniAsistente,
strCalidadAsistente,
dtmBajaTeorica,
strPrestaServicios,
strCategoria,
idJornada,
strHorasSemanales,
strDiaInicioSemana,
strDiaFinSemana,
idFrecuenciaHoras,
strHorasTiempoParcial,
strDiaInicioParcial,
strDiaFinParcial,
idSituacionTiempoParcial,
strDistribucionTiempoParcial,
dtmFechaPrecontrato,
dtmInicioContrato,
dtmFinContrato,
strPeriodoPrueba,
chkDuracionMayorPeriodoPrueba,
strRetribucionBruta,
strFrecuenciaRetribucion,
strDistribucionRetribucion,
strVacaciones,
strRealizarObraServicio,
chkCircunstanciasProduccion,
strCircunstanciasProduccion,
strSustitucion,
chkReservaPuesto,
chkMaternidad,
chkExcedentes,
chkSustitucionTemporal,
chkSustituirTrabajadoresFormacion,
chkSustituirTrabajadoresMinusvalidos,
chkDeterminadaSexta_ObraoServicio,
chkDeterminadaSexta_AtenderExigencias,
chkDeterminadaSexta_SustituirTrabajador,
chkDeterminadaSexta_ReducirLaJornada,
strReducirJornadaSalario,
strCargo,
strConvenio,
strOficina,
strClausulaAdicional,
strCiudad,
dtmFecha,
idEstado,
idPadre,
idHijo,
chkPactoHoras,
chkContratoRelevo,
idCampana,
idCliente,
strCentro,
strSeccionCentro,
strCampanaMerchandeco,
idCentro,
idCampanaTaskforce,
idTipoCampana,
idTipoContrato,
idTipoConvenio,
idTipoCategoria,
strCoeficiente,
blnDocumentosCentro,
strObservaciones,
idUsuarioContrata,
idUsuarioPrecontrata,
strHuellaContrato,
strHuellaSegSocialAlta,
strHuellaSegSocialBaja,
chkAnularContrato,
idContratoBaja,
dtmFechaBajaEfectiva,
dtmFechaComunicadoBaja,
strClienteBaja,
chkConversion,
strConversionOficina,
dtmConversionConFecha,
idConversionCompletaParcial,
dtmConversionFechaContrato,
strConversionOficinaRegistro,
dtmConversionConFechaRegistro,
strConversionHuellaContrato,
strConversionPrimeraHoras,
chkConversionPrimeraPactoHoras,
chkConversionSexta1,
chkConversionSexta2,
chkConversionSeptima1,
strProrrogaOficina,
strProrrogaAcuerdan,
strProrrogaDe,
dtmProrrogaDesde,
dtmProrrogaHasta,
dtmProrrogaConFecha,
strProrrogaDuracionIni,
strProrrogaOficinaReg,
dtmProrrogaEnFechaReg,
strProrrogaNumHuella,
strProrrogaNunProrrogas,
idTipoBaja,
dtmFechaEfectivaVariacion,
dtmFechaModificacion,
IdUsuarioModificacion,
dtmFechaVariacionHijo
)
values
(
@strFirma ,
@strCifEmpresa ,
@strRegimen ,
@strPatronal,
@idPatronal ,
@intCodigoContrato,
@strApoderado ,
@strNifApoderado ,
@strConceptoApoderado ,
@idEmpresa ,
@idActividadEconomicaEmpresa ,
@strPais ,
@strTrabajadoresPlantilla ,
@strTrabajadoresCentro,
@idTrabajador ,
@strNivelEstudios ,
@strCodigoNivelEstudio ,
@strAsistenteLegal ,
@strDniAsistente ,
@strCalidadAsistente ,
@dtmBajaTeorica ,
@strPrestaServicios ,
@strCategoria ,
@idJornada ,
@strHorasSemanales ,
@strDiaInicioSemana ,
@strDiaFinSemana ,
@idFrecuenciaHoras ,
@strHorasTiempoParcial ,
@strDiaInicioParcial ,
@strDiaFinParcial ,
@idSituacionTiempoParcial ,
@strDistribucionTiempoParcial ,
@dtmFechaPrecontrato,
@dtmInicioContrato ,
@dtmFinContrato ,
@strPeriodoPrueba ,
@chkDuracionMayorPeriodoPrueba,
@strRetribucionBruta ,
@strFrecuenciaRetribucion ,
@strDistribucionRetribucion ,
@strVacaciones ,
@strRealizarObraServicio ,
@chkCircunstanciasProduccion ,
@strCircunstanciasProduccion ,
@strSustitucion ,
@chkReservaPuesto ,
@chkMaternidad ,
@chkExcedentes ,
@chkSustitucionTemporal ,
@chkSustituirTrabajadoresFormacion ,
@chkSustituirTrabajadoresMinusvalidos ,
@chkDeterminadaSexta_ObraoServicio ,
@chkDeterminadaSexta_AtenderExigencias ,
@chkDeterminadaSexta_SustituirTrabajador ,
@chkDeterminadaSexta_ReducirLaJornada ,
@strReducirJornadaSalario ,
@strCargo ,
@strConvenio ,
@strOficina ,
@strClausulaAdicional , -- mirar si puede ser text
@strCiudad,
@dtmFecha ,
@idEstado ,
@idPadre,
@idHijo ,
@chkPactoHoras ,
@chkContratoRelevo ,
@idCampana ,
@idCliente ,
@strCentro ,
@strSeccionCentro ,
@strCampanaMerchandeco ,
@idCentro,
@idCampanaTaskforce ,
@idTipoCampana ,
@idTipoContrato ,
@idTipoConvenio ,
@idTipoCategoria ,
@strCoeficiente ,
@blnDocumentosCentro ,
@strObservaciones ,
@idUsuarioContrata ,
@idUsuarioPrecontrata ,
@strHuellaContrato ,
@strHuellaSegSocialAlta ,
@strHuellaSegSocialBaja ,
@chkAnularContrato ,
@idContratoBaja ,
@dtmFechaBajaEfectiva ,
@dtmFechaComunicadoBaja ,
@strClienteBaja ,
@chkConversion ,
@strConversionOficina ,
@dtmConversionConFecha ,
@idConversionCompletaParcial ,
@dtmConversionFechaContrato ,
@strConversionOficinaRegistro ,
@dtmConversionConFechaRegistro,
@strConversionHuellaContrato ,
@strConversionPrimeraHoras ,
@chkConversionPrimeraPactoHoras ,
@chkConversionSexta1 ,
@chkConversionSexta2 ,
@chkConversionSeptima1 ,
@strProrrogaOficina ,
@strProrrogaAcuerdan ,
@strProrrogaDe ,
@dtmProrrogaDesde ,
@dtmProrrogaHasta ,
@dtmProrrogaConFecha ,
@strProrrogaDuracionIni ,
@strProrrogaOficinaReg ,
@dtmProrrogaEnFechaReg ,
@strProrrogaNumHuella ,
@strProrrogaNunProrrogas ,
@idTipoBaja ,
@dtmFechaEfectivaVariacion ,
@dtmFechaModificacion ,
@IdUsuarioModificacion ,
@dtmFechaVariacionHijo
)
SELECT SCOPE_IDENTITY() AS clave

Eladio Rincón escribió:
Tratala con "cuidado" porque como siga creciendo, tarde o temprano tendrás
que replantearte el diseño; en cualquier caso, ¿podrías poner el script para
echarle un vistazo?

Gracias,

Respuesta Responder a este mensaje
#8 Eladio Rincón
07/11/2005 - 23:43 | Informe spam
José Miguel,

se que debe resultar costoso de desarrollar, pero yo normalizaría la tabla
contratos porque con el tiempo puedes llegar a tener problemas de
rendimiento.

¿cual es el crecimiento estimado para la tabla contratos? ¿filas por año?
¿frecuencia de la creación de contratos?

Gracias,



Eladio Rincón

SQL Server MVP, Mentor
Solid Quality Learning
http://www.SolidQualityLearning.com

"Solid Quality Learning is the trusted global provider of advanced education
and solutions for the entire Microsoft database platform"


"José Miguel" wrote in message
news:
Pues aquí lo tienes, ya se que no es muy normal pero es lo que hay en
estos momentos.

Todavía no lo he probado

Saludos



create PROCEDURE procContratoInsert @strFirma varchar(100),
@strCifEmpresa varchar(50),
@strRegimen varchar(255),
@strPatronal nvarchar(255),
@idPatronal int,
@intCodigoContrato int,
@strApoderado nvarchar(255),
@strNifApoderado nvarchar(255),
@strConceptoApoderado nvarchar(255),
@idEmpresa int,
@idActividadEconomicaEmpresa int,
@strPais varchar(255),
@strTrabajadoresPlantilla varchar(255),
@strTrabajadoresCentro varchar(255),
@idTrabajador int,
@strNivelEstudios varchar(255),
@strCodigoNivelEstudio nvarchar(255),
@strAsistenteLegal varchar(255),
@strDniAsistente varchar(50),
@strCalidadAsistente varchar(255),
@dtmBajaTeorica DateTime,
@strPrestaServicios varchar(255),
@strCategoria varchar(255),
@idJornada int,
@strHorasSemanales varchar(255),
@strDiaInicioSemana varchar(255),
@strDiaFinSemana varchar(255),
@idFrecuenciaHoras int,
@strHorasTiempoParcial varchar(255),
@strDiaInicioParcial varchar(50),
@strDiaFinParcial varchar(50),
@idSituacionTiempoParcial int,
@strDistribucionTiempoParcial varchar(255),
@dtmFechaPrecontrato datetime,
@dtmInicioContrato datetime,
@dtmFinContrato datetime,
@strPeriodoPrueba varchar(255),
@chkDuracionMayorPeriodoPrueba bit,
@strRetribucionBruta varchar(255),
@strFrecuenciaRetribucion varchar(255),
@strDistribucionRetribucion varchar(255),
@strVacaciones varchar(255),
@strRealizarObraServicio varchar(255) ,
@chkCircunstanciasProduccion bit,
@strCircunstanciasProduccion nvarchar(100),
@strSustitucion varchar(255),
@chkReservaPuesto bit,
@chkMaternidad bit,
@chkExcedentes bit,
@chkSustitucionTemporal bit,
@chkSustituirTrabajadoresFormacion bit,
@chkSustituirTrabajadoresMinusvalidos bit,
@chkDeterminadaSexta_ObraoServicio bit,
@chkDeterminadaSexta_AtenderExigencias bit,
@chkDeterminadaSexta_SustituirTrabajador bit,
@chkDeterminadaSexta_ReducirLaJornada bit,
@strReducirJornadaSalario varchar(255),
@strCargo varchar(255),
@strConvenio varchar(255),
@strOficina varchar(255),
@strClausulaAdicional varchar(4000), -- mirar si puede ser text
@strCiudad varchar(255),
@dtmFecha datetime,
@idEstado int ,
@idPadre int ,
@idHijo int ,
@chkPactoHoras bit ,
@chkContratoRelevo bit,
@idCampana int,
@idCliente int,
@strCentro nvarchar(255),
@strSeccionCentro nvarchar(100),
@strCampanaMerchandeco nvarchar(100),
@idCentro int,
@idCampanaTaskforce int,
@idTipoCampana int,
@idTipoContrato int,
@idTipoConvenio int,
@idTipoCategoria int,
@strCoeficiente nvarchar(50),
@blnDocumentosCentro bit,
@strObservaciones nvarchar(1000),
@idUsuarioContrata int,
@idUsuarioPrecontrata int,
@strHuellaContrato nvarchar(50),
@strHuellaSegSocialAlta nvarchar(50),
@strHuellaSegSocialBaja nvarchar(50),
@chkAnularContrato bit,
@idContratoBaja bit,
@dtmFechaBajaEfectiva datetime,
@dtmFechaComunicadoBaja datetime,
@strClienteBaja nvarchar(100),
@chkConversion bit,
@strConversionOficina nvarchar(100),
@dtmConversionConFecha datetime,
@idConversionCompletaParcial tinyint,
@dtmConversionFechaContrato datetime,
@strConversionOficinaRegistro nvarchar(100),
@dtmConversionConFechaRegistro datetime,
@strConversionHuellaContrato nvarchar(50),
@strConversionPrimeraHoras nvarchar(10),
@chkConversionPrimeraPactoHoras bit,
@chkConversionSexta1 bit,
@chkConversionSexta2 bit,
@chkConversionSeptima1 bit,
@strProrrogaOficina nvarchar(100),
@strProrrogaAcuerdan nvarchar(100),
@strProrrogaDe nvarchar(100),
@dtmProrrogaDesde datetime,
@dtmProrrogaHasta datetime,
@dtmProrrogaConFecha datetime,
@strProrrogaDuracionIni nvarchar(100),
@strProrrogaOficinaReg nvarchar(100),
@dtmProrrogaEnFechaReg datetime,
@strProrrogaNumHuella nvarchar(100),
@strProrrogaNunProrrogas nvarchar(100),
@idTipoBaja int,
@dtmFechaEfectivaVariacion datetime,
@dtmFechaModificacion datetime,
@IdUsuarioModificacion int,
@dtmFechaVariacionHijo datetime


AS Insert into tblContrato
(
strFirma,
strCifEmpresa,
strRegimen,
strPatronal,
idPatronal,
intCodigoContrato,
strApoderado,
strNifApoderado,
strConceptoApoderado,
idEmpresa,
idActividadEconomicaEmpresa,
strPais,
strTrabajadoresPlantilla,
strTrabajadoresCentro,
idTrabajador,
strNivelEstudios,
strCodigoNivelEstudio,
strAsistenteLegal,
strDniAsistente,
strCalidadAsistente,
dtmBajaTeorica,
strPrestaServicios,
strCategoria,
idJornada,
strHorasSemanales,
strDiaInicioSemana,
strDiaFinSemana,
idFrecuenciaHoras,
strHorasTiempoParcial,
strDiaInicioParcial,
strDiaFinParcial,
idSituacionTiempoParcial,
strDistribucionTiempoParcial,
dtmFechaPrecontrato,
dtmInicioContrato,
dtmFinContrato,
strPeriodoPrueba,
chkDuracionMayorPeriodoPrueba,
strRetribucionBruta,
strFrecuenciaRetribucion,
strDistribucionRetribucion,
strVacaciones,
strRealizarObraServicio,
chkCircunstanciasProduccion,
strCircunstanciasProduccion,
strSustitucion,
chkReservaPuesto,
chkMaternidad,
chkExcedentes,
chkSustitucionTemporal,
chkSustituirTrabajadoresFormacion,
chkSustituirTrabajadoresMinusvalidos,
chkDeterminadaSexta_ObraoServicio,
chkDeterminadaSexta_AtenderExigencias,
chkDeterminadaSexta_SustituirTrabajador,
chkDeterminadaSexta_ReducirLaJornada,
strReducirJornadaSalario,
strCargo,
strConvenio,
strOficina,
strClausulaAdicional,
strCiudad,
dtmFecha,
idEstado,
idPadre,
idHijo,
chkPactoHoras,
chkContratoRelevo,
idCampana,
idCliente,
strCentro,
strSeccionCentro,
strCampanaMerchandeco,
idCentro,
idCampanaTaskforce,
idTipoCampana,
idTipoContrato,
idTipoConvenio,
idTipoCategoria,
strCoeficiente,
blnDocumentosCentro,
strObservaciones,
idUsuarioContrata,
idUsuarioPrecontrata,
strHuellaContrato,
strHuellaSegSocialAlta,
strHuellaSegSocialBaja,
chkAnularContrato,
idContratoBaja,
dtmFechaBajaEfectiva,
dtmFechaComunicadoBaja,
strClienteBaja,
chkConversion,
strConversionOficina,
dtmConversionConFecha,
idConversionCompletaParcial,
dtmConversionFechaContrato,
strConversionOficinaRegistro,
dtmConversionConFechaRegistro,
strConversionHuellaContrato,
strConversionPrimeraHoras,
chkConversionPrimeraPactoHoras,
chkConversionSexta1,
chkConversionSexta2,
chkConversionSeptima1,
strProrrogaOficina,
strProrrogaAcuerdan,
strProrrogaDe,
dtmProrrogaDesde,
dtmProrrogaHasta,
dtmProrrogaConFecha,
strProrrogaDuracionIni,
strProrrogaOficinaReg,
dtmProrrogaEnFechaReg,
strProrrogaNumHuella,
strProrrogaNunProrrogas,
idTipoBaja,
dtmFechaEfectivaVariacion,
dtmFechaModificacion,
IdUsuarioModificacion,
dtmFechaVariacionHijo
)
values
(
@strFirma ,
@strCifEmpresa ,
@strRegimen ,
@strPatronal,
@idPatronal ,
@intCodigoContrato,
@strApoderado ,
@strNifApoderado ,
@strConceptoApoderado ,
@idEmpresa ,
@idActividadEconomicaEmpresa ,
@strPais ,
@strTrabajadoresPlantilla ,
@strTrabajadoresCentro,
@idTrabajador ,
@strNivelEstudios ,
@strCodigoNivelEstudio ,
@strAsistenteLegal ,
@strDniAsistente ,
@strCalidadAsistente ,
@dtmBajaTeorica ,
@strPrestaServicios ,
@strCategoria ,
@idJornada ,
@strHorasSemanales ,
@strDiaInicioSemana ,
@strDiaFinSemana ,
@idFrecuenciaHoras ,
@strHorasTiempoParcial ,
@strDiaInicioParcial ,
@strDiaFinParcial ,
@idSituacionTiempoParcial ,
@strDistribucionTiempoParcial ,
@dtmFechaPrecontrato,
@dtmInicioContrato ,
@dtmFinContrato ,
@strPeriodoPrueba ,
@chkDuracionMayorPeriodoPrueba,
@strRetribucionBruta ,
@strFrecuenciaRetribucion ,
@strDistribucionRetribucion ,
@strVacaciones ,
@strRealizarObraServicio ,
@chkCircunstanciasProduccion ,
@strCircunstanciasProduccion ,
@strSustitucion ,
@chkReservaPuesto ,
@chkMaternidad ,
@chkExcedentes ,
@chkSustitucionTemporal ,
@chkSustituirTrabajadoresFormacion ,
@chkSustituirTrabajadoresMinusvalidos ,
@chkDeterminadaSexta_ObraoServicio ,
@chkDeterminadaSexta_AtenderExigencias ,
@chkDeterminadaSexta_SustituirTrabajador ,
@chkDeterminadaSexta_ReducirLaJornada ,
@strReducirJornadaSalario ,
@strCargo ,
@strConvenio ,
@strOficina ,
@strClausulaAdicional , -- mirar si puede ser text
@strCiudad,
@dtmFecha ,
@idEstado ,
@idPadre,
@idHijo ,
@chkPactoHoras ,
@chkContratoRelevo ,
@idCampana ,
@idCliente ,
@strCentro ,
@strSeccionCentro ,
@strCampanaMerchandeco ,
@idCentro,
@idCampanaTaskforce ,
@idTipoCampana ,
@idTipoContrato ,
@idTipoConvenio ,
@idTipoCategoria ,
@strCoeficiente ,
@blnDocumentosCentro ,
@strObservaciones ,
@idUsuarioContrata ,
@idUsuarioPrecontrata ,
@strHuellaContrato ,
@strHuellaSegSocialAlta ,
@strHuellaSegSocialBaja ,
@chkAnularContrato ,
@idContratoBaja ,
@dtmFechaBajaEfectiva ,
@dtmFechaComunicadoBaja ,
@strClienteBaja ,
@chkConversion ,
@strConversionOficina ,
@dtmConversionConFecha ,
@idConversionCompletaParcial ,
@dtmConversionFechaContrato ,
@strConversionOficinaRegistro ,
@dtmConversionConFechaRegistro,
@strConversionHuellaContrato ,
@strConversionPrimeraHoras ,
@chkConversionPrimeraPactoHoras ,
@chkConversionSexta1 ,
@chkConversionSexta2 ,
@chkConversionSeptima1 ,
@strProrrogaOficina ,
@strProrrogaAcuerdan ,
@strProrrogaDe ,
@dtmProrrogaDesde ,
@dtmProrrogaHasta ,
@dtmProrrogaConFecha ,
@strProrrogaDuracionIni ,
@strProrrogaOficinaReg ,
@dtmProrrogaEnFechaReg ,
@strProrrogaNumHuella ,
@strProrrogaNunProrrogas ,
@idTipoBaja ,
@dtmFechaEfectivaVariacion ,
@dtmFechaModificacion ,
@IdUsuarioModificacion ,
@dtmFechaVariacionHijo
)
SELECT SCOPE_IDENTITY() AS clave

Eladio Rincón escribió:
Tratala con "cuidado" porque como siga creciendo, tarde o temprano
tendrás que replantearte el diseño; en cualquier caso, ¿podrías poner el
script para echarle un vistazo?

Gracias,

Respuesta Responder a este mensaje
#9 José Miguel
08/11/2005 - 09:24 | Informe spam
Eladio,

Si que tengo en mente normalizar la tabla, pero en estos momentos no
dispongo de tiempo. ¿Crees que puedo tener problemas a medio plazo?

El crecimiento estimado es de unas 10.000 filas año
Supongo que se generan unos 200 contratos por dia.

Saludos


Eladio Rincón escribió:
José Miguel,

se que debe resultar costoso de desarrollar, pero yo normalizaría la tabla
contratos porque con el tiempo puedes llegar a tener problemas de
rendimiento.

¿cual es el crecimiento estimado para la tabla contratos? ¿filas por año?
¿frecuencia de la creación de contratos?

Gracias,



Respuesta Responder a este mensaje
#10 Eladio Rincón
08/11/2005 - 10:39 | Informe spam
Hola José Miguel,

con el tiempo se irá haciendo más dificil; he sumado la longitud de los
tipos de datos del procedimiento almacenado, y me sale algo más de 18900
bytes como tamaño máximo porque tienes muchas columnas varchar o nvarchar...
en realidad el tamaño máximo de cada fila no podrá exceder de 8060 bytes; lo
que quiero decir es que cada fila que insertes ocupará una página, y con el
tiempo ya sabes...

sobre tu calculo, dices que se crean 200 contratos diarios, que serían
semanalmente 1.000, o anualmente 54.000 que no está relacionado con los
10.000 filas anuales que comentas (a no ser que se borren muchos contratos
;-))
con el tiempo resultará costoso de manejar, pero vamos tienes margen de
tiempo suficiente para poder cambiarlo...

Saludos,

Eladio Rincón

SQL Server MVP, Mentor
Solid Quality Learning
http://www.SolidQualityLearning.com

"Solid Quality Learning is the trusted global provider of advanced education
and solutions for the entire Microsoft database platform"


"José Miguel" wrote in message
news:%
Eladio,

Si que tengo en mente normalizar la tabla, pero en estos momentos no
dispongo de tiempo. ¿Crees que puedo tener problemas a medio plazo?

El crecimiento estimado es de unas 10.000 filas año
Supongo que se generan unos 200 contratos por dia.

Saludos


Eladio Rincón escribió:
José Miguel,

se que debe resultar costoso de desarrollar, pero yo normalizaría la
tabla contratos porque con el tiempo puedes llegar a tener problemas de
rendimiento.

¿cual es el crecimiento estimado para la tabla contratos? ¿filas por año?
¿frecuencia de la creación de contratos?

Gracias,


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida