Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Insercion Masiva de Registros

Estas en el tema de Insercion Masiva de Registros en el foro de SQL Server en Foros del Web. Gente como estan? a ver si alguno me puede dar una mano para hacerlo de manera mas optima una insercion sobre una BD. yo necesitaria ...
  #1 (permalink)  
Antiguo 28/04/2009, 05:38
 
Fecha de Ingreso: abril-2009
Ubicación: Sunchales
Mensajes: 67
Antigüedad: 15 años
Puntos: 0
Exclamación Insercion Masiva de Registros

Gente como estan? a ver si alguno me puede dar una mano para hacerlo de manera mas optima una insercion sobre una BD.
yo necesitaria insertar registros como el ejemplo de abajo, el tema es que tengo aprox 15 registros por dia, por 12 meses, por aprox 5 años, y hacerlo a pata me va a llevar dias, alguien tiene alguna idea para optimizar esta insercion desde Sql..
Muchas gracias.

Ej..

INSERT INTO TURNOS VALUES('2009-05-01','08.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','08.30 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','09.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','09.30 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','10.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','10.30 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','11.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','11.30 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','12.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','12.30 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','16.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','16.30 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','17.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','17.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','18.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','18.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','19.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','19.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','20.00 hrs',0)
INSERT INTO TURNOS VALUES('2009-05-01','20.00 hrs',0)
  #2 (permalink)  
Antiguo 28/04/2009, 06:16
 
Fecha de Ingreso: febrero-2009
Mensajes: 312
Antigüedad: 15 años, 2 meses
Puntos: 4
Respuesta: Insercion Masiva de Registros

Hola mucho me temo que el insert va a ser como el expuesto.
Los datos, supongo, que los tendrás en algún formato o archivo...
De todas maneras si tienes los datos en un ascii, csv, etc.. una herramienta muy útil es excel para importarlos, ordenarlos, concatenar, etc.. lo único malo que hasta 65000 filas creo.

Saludos
  #3 (permalink)  
Antiguo 28/04/2009, 06:42
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 5 meses
Puntos: 38
Respuesta: Insercion Masiva de Registros

Desde la fecha actual hasta 31 de dic de 20014 solo son 41,480 registros...


Una forma facil de calcular los registros es haciendo un ciclo...

Considerando que sera una carga inicial y no algo de todos los dias...

Código:
DECLARE @Date_Start datetime, @Date_End datetime


SET @Date_Start = convert(varchar, getdate(), 112)
SET @Date_End = '20141231'

While @Date_Start <= @Date_End
BEGIN


    INSERT INTO TURNOS VALUES(@Date_Start,'08.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'08.30 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'09.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'09.30 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'10.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'10.30 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'11.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'11.30 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'12.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'12.30 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'16.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'16.30 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'17.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'17.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'18.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'18.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'19.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'19.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'20.00 hrs',0)
    INSERT INTO TURNOS VALUES(@Date_Start,'20.00 hrs',0) 
 
    SET @Date_Start = @Date_Start + 1

END
Saludos!
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.
  #4 (permalink)  
Antiguo 28/04/2009, 08:54
 
Fecha de Ingreso: abril-2009
Ubicación: Sunchales
Mensajes: 67
Antigüedad: 15 años
Puntos: 0
Respuesta: Insercion Masiva de Registros

Gracias idolo, eso estaba buscando.
Un abrazo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:32.