SQL Server - Nombre de tabla por parametro

 
Vista:
sin imagen de perfil

Nombre de tabla por parametro

Publicado por chiko_0522 (9 intervenciones) el 25/05/2016 18:28:17
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
declare @periodo nvarchar(10)
set @periodo = (select max(codigo_periodo) from pp_periodos)
 
declare @tabla nvarchar(Max)
	 set @tabla =  'pp_trans_planillas_'+@periodo+''
 
if not exists
  (
	SELECT *
    FROM INFORMATION_SCHEMA.TABLES
    WHERE TABLE_SCHEMA = 'dbo' AND TABLE_NAME = 'pp_trans_planillas_'+@periodo+''
  )
  begin
     Create table @tabla(Id int,Perio nvarchar(50),Calle int))
  end

lo qque deseo es poder crear la tabla con el nombre que se setea en la variable @tabla pero me da error siempre, como seria lo correcto y tambien como se le asignan los campos a la tabla
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 Isaia
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Nombre de tabla por parametro

Publicado por Isaia (4558 intervenciones) el 25/05/2016 20:35:40
Segun las reglas de los foros, usted NO DEBE abrir una nueva posta con el mismo tema, siga el hilo original
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Nombre de tabla por parametro

Publicado por chiko_0522 (9 intervenciones) el 25/05/2016 20:58:53
Lo importante seria ayudar a la comunidad y no poner excusas para ayudar
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

Nombre de tabla por parametro

Publicado por Isaias (4558 intervenciones) el 25/05/2016 22:30:00
Yo no defini las REGLAS, simplemente soy un participante mas y eso de la AYUDA, pues te la estoy dando en la otra posta, ¿porque su enojo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Nombre de tabla por parametro

Publicado por chiko_0522 (9 intervenciones) el 26/05/2016 02:25:25
No te preocuopes ya logre hacerlo y sin necesidad de que ayudaram por aqui, sos demasiado egoista, solo ayuda a la gente y no este ahi con mas reglas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar
Imágen de perfil de xve
Val: 63
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Nombre de tabla por parametro

Publicado por xve (102 intervenciones) el 26/05/2016 08:34:35
Estaria bien que comentaras como lo resolviste, por si otro usuario tiene el mismo problema!!!
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

Nombre de tabla por parametro

Publicado por Isaias (4558 intervenciones) el 26/05/2016 16:59:35
Esperaremos sentados
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

Nombre de tabla por parametro

Publicado por Francisco (9 intervenciones) el 26/05/2016 19:35:15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
declare @periodo nvarchar(10)
set @periodo = (select max(codigo_periodo) from pp_periodos)
declare @tabla nvarchar(Max)
set @tabla =  'CREATE TABLE pp_trans_planillas_'+@periodo+'([codigo_planilla] [varchar](10) NOT NULL,
	[identidad_empleado] [varchar](13) NOT NULL,
	[cuenta] [varchar](50) NOT NULL,
	[codigo_transaccion] [int] NOT NULL,
	[nombres_empleado] [varchar](35) NULL,
	[apellidos_empleado] [varchar](35) NULL,
	[codigo_nivel_educativo] [int] NOT NULL,
	[codigo_banco_deposito] [int] NULL,
	[cuenta_bancaria] [varchar](25) NULL,
	[codigo_departamento] [char](2) NULL,
	[codigo_municipio] [char](2) NULL,
	[codigo_centro] [varchar](5) NULL,
	[codigo_aldea] [varchar](5) NULL,
	[codigo_clase] [int] NULL,
	[codigo_planta] [char](2) NULL,
	[codigo_cargo] [varchar](15) NULL,
	[codigo_tipo_cargo] [char](2) NULL,
	[codigo_cargo_generico] [char](2) NULL,
	[codigo_distrito] [int] NULL,
	[monto_transaccion] [decimal](18, 2) NOT NULL,
	[monto_sobregiro] [decimal](18, 2) NULL,
	[estructura_ejecucion] [varchar](50) NULL,
	[estado_presupuesto] [smallint] NULL,
	[clase_transaccion] [smallint] NULL,
	[descripcion_corta_trans] [varchar](25) NULL,
	[descripcion_transaccion] [varchar](100) NULL,
	[clase_centro] [int] NULL,
	[codigo_tipo_centro] [int] NULL,
	[codigo_unidad] [char](1) NULL,
	[anio_cheque] [varchar](4) NULL,
	[tipo_pago_cheque] [char](2) NULL,
	[numero_cheque] [varchar](6) NULL,
	[item_matricial] [int] NULL,
	[corrent] [decimal](4, 0) NULL,
	[programa] [decimal](2, 0) NULL,
	[subprog] [decimal](2, 0) NULL,
	[proyecto] [decimal](3, 0) NULL,
	[actobra] [decimal](3, 0) NULL,
	[partida] [decimal](5, 0) NULL,
	[codfte] [decimal](5, 0) NULL,
	[org_financ] [decimal](3, 0) NULL,
	[benef] [decimal](4, 0) NULL,
	[numero_plaza] [varchar](6) NULL,
	[horas_clase] [int] NULL,
	[nombre_tipo_cargo] [varchar](50) NULL,
	[nombre_cargo_generico] [varchar](50) NULL,
	[descripcion_clase] [varchar](50) NULL,
	[nombre_unidad] [varchar](50) NULL,
	[descripcion_planta] [varchar](50) NULL,
	[descripcion_cargo] [varchar](50) NULL,
	[descripcion_departamento] [varchar](25) NULL,
	[descripcion_municipio] [varchar](25) NULL,
	[descripcion_centro] [varchar](120) NULL,
	[descripcion_aldea] [varchar](25) NULL,
	[descripcion_distrito] [varchar](25) NULL,
	[descripcion_tipo_centro] [varchar](100) NULL,
	[abreviatura_trans] [varchar](10) NULL,
	[fecha_creacion] [datetime2](0) NULL,
	[usuario_creacion] [varchar](25) NOT NULL,
	[fecha_modificacion] [datetime2](0) NULL,
	[usuario_modificacion] [varchar](25) NULL,
	[anio_deposito] [varchar](4) NULL,
	[tipo_deposito] [char](2) NULL,
	[numero_deposito] [varchar](6) NULL,
	[gerencia_admon] [decimal](3, 0) NULL,
	[unidad_ejecutora] [decimal](3, 0) NULL)'
if not exists
	(
	SELECT *
	FROM INFORMATION_SCHEMA.TABLES
	WHERE TABLE_SCHEMA = 'dbo' AND TABLE_NAME = 'pp_trans_planillas_'+@periodo+''
	)
	begin
		exec sp_executesql @tabla
	end
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