SQL Server - ejecutar script automatico

 
Vista:
sin imagen de perfil
Val: 48
Ha disminuido su posición en 2 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

ejecutar script automatico

Publicado por JJ (26 intervenciones) el 28/01/2021 19:35:58
Buenas tardes,

tengo un Script con varios procedimientos que se tiene que ejecutar cuando la jefatura lo solicita o si hay datos nuevos.

el procedimiento se hace por medio de importación de datos con excel hacia SQL.

queremos evitar ir ejecutando linea por linea el procedimento (son muchos, pero les voy a adjuntar un pequeño ejemplo para que me ayuden) e intentar encontrar un manera de que se ejeute todo paso por paso de manera automatica, puede ser por medio de Store Procedure o Job SQL (no tenemos claro que puede ser mejor).

ustedes me pueden ayudar a encontrar una solucion que el siguiente ejemplo se ejecute con solo presionar el boton de EXCUTE (f5) desde el motor de sql.

Los datos de version de sql son:
SQL Server Management Studio 15.0.18206.0
Microsoft Analysis Services Client Tools 15.0.1567.0
Microsoft Data Access Components (MDAC) 10.0.14393.0
Microsoft MSXML 3.0 6.0
Microsoft Internet Explorer 9.11.14393.0
Microsoft .NET Framework 4.0.30319.42000
Operating System 10.0.14393


Captura
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

ejecutar script automatico

Publicado por Isaias (4558 intervenciones) el 28/01/2021 20:34:16
Por principio de cuentas, nos das la version del MANAGEMENT STUDIO, ejecuta en un query: SELECT @@VERSION y muéstranos el resultado

Segundo, todo lo que se refiera a mover datos de forma masiva debe ser con SSIS (Servicios de integracion)

Tercero, tu query hace un JOIN de forma antigua:

1
2
FROM dbo.prueba, dbo.MIRROR
WHERE dbo.prueba.id = dbo.MIRROR.ID

Debiendo ser:

1
2
FROM dbo.prueba INNER JOIN dbo.MIRROR
ON dbo.prueba.id = dbo.MIRROR.ID

Cuarto: Dices que CARGAS INFORMACION, no veo donde lo hagas, veo que estas haciendo un UPDATE, ¿cierto?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha disminuido su posición en 2 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

ejecutar script automatico

Publicado por JJ (26 intervenciones) el 28/01/2021 21:20:43
la version es: Microsoft SQL Server 2017 (RTM-CU19) (KB4535007) - 14.0.3281.6 (X64) Jan 23 2020 21:00:04 Copyright (C) 2017 Microsoft Corporation Standard Edition (64-bit) on Windows Server 2016 Standard 10.0 <X64> (Build 14393: ) (Hypervisor)


si es un update... al poner carga me referia a un update...


lo del inner join, tienes razon, gracias por la observacion..

pero la idea es esa, no tener q ir ejecutando linea por linea,,,, la idea es que se haga todo de manera continua
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

ejecutar script automatico

Publicado por Isaias (4558 intervenciones) el 29/01/2021 19:10:22
Tu codigo no esta muy claro, ¿de donde salen DATEIN y DEPART?, en esa linea, actualizas TODOS los registros de dbo.prueba, ¿cierto?, veamos:

1
2
3
4
5
6
7
UPDATE dbo.prueba SET
dbo.prueba.NAME = dbo.MIRROR.NAME,
dbo.prueba SET MES = datepart(MONTH, DATEIN),
dbo.prueba SET UP = SUBSTRING(DEPART,1,4)
dbo.prueba.LASTNAME = dbo.MIRROR.LASTNAME
FROM dbo.prueba INNER JOIN dbo.MIRROR
ON dbo.prueba.ID = dbo.MIRROR.ID
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

ejecutar script automatico

Publicado por Isaias (4558 intervenciones) el 01/02/2021 22:03:05
Ojo: Corrección en la instruccion

1
2
3
4
5
6
7
UPDATE dbo.prueba SET
dbo.prueba.NAME = dbo.MIRROR.NAME,
dbo.prueba.MES = datepart(MONTH, DATEIN),
dbo.prueba.UP = SUBSTRING(DEPART,1,4)
dbo.prueba.LASTNAME = dbo.MIRROR.LASTNAME
FROM dbo.prueba INNER JOIN dbo.MIRROR
ON dbo.prueba.ID = dbo.MIRROR.ID
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha disminuido su posición en 2 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

ejecutar script automatico

Publicado por JJ (26 intervenciones) el 03/02/2021 15:59:11
son columnas de la misma tabla, se utiliza esa formula para saber el mes que corresponde a una fecha
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

ejecutar script automatico

Publicado por Isaias (4558 intervenciones) el 03/02/2021 16:25:53
¿Ya probaste mi instruccion? Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha disminuido su posición en 2 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

ejecutar script automatico

Publicado por JJ (26 intervenciones) el 03/02/2021 18:26:46
correcto, si funciona.

pero la intencion es conocer si hay algun procedimiento que ejecute el script desde el alter table de manera automática.

como si fuera una procedimiento almacenado, en donde ejecuta el alter table, automáticamente ejecuta el update y una vez que finaliza el update ejecute la ultima instrucción de insert.

la idea no es tener q abrir el script y ejecutar procedimiento por procedimiento de manera manual, el objetivo es como programarlo para que se ejecute de manera automática todas las instrucciones.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

ejecutar script automatico

Publicado por Isaias (4558 intervenciones) el 03/02/2021 19:20:15
Ahora si ya me dejaste de a 4, ¿Cual ALTER TABLE?, si te refieres a las primeras instrucciones, la respuesta es SI, todas pueden estar en un STORE PROCEDURE o en un SCRIPT T-SQL, ¿pero siempre es la misma instruccion de ALTER TABLE o varia en base a que?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha disminuido su posición en 2 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

ejecutar script automatico

Publicado por JJ (26 intervenciones) el 03/02/2021 20:05:51
si correcto, es para un ejercicio (prueba) y de esta manera valorar las acciones a seguir....

tengo claro que eso puede quedar definido en la tabla desde su creacion, pero como se realiza un importacion desde otra fuente, queremos hacer estas pruebas.

me puedes indicar como puede ser el procedimiento del store procedure??.... en donde si le agregamos mas instrucciones el siga ejecutando una por una hasta la ultima,

de verdad gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar