Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/12/2012, 21:56
onslaught
 
Fecha de Ingreso: abril-2009
Mensajes: 10
Antigüedad: 15 años
Puntos: 0
Pregunta Creacion de tablas avanzadas

Nuevamente yo, como mencione antes, estoy trabajando en una migracion de SQL Server a PostgreSQL, migrar las tablas ha sido relativamente sencillo y las mayores modificaciones que he tenido que hacer son los tipos de datos, sin embargo en mi recorrido por las tablas me encontre con algunas que son bastante extrañas y nunca habia visto y mucho menos me imaginaba que fuera posible hacerlo.

Dejo estas dos como ejemplo:

Código:
CREATE TABLE Usuarios.Menu(
	Menu VARCHAR(5) NOT NULL,
	Menu_parent VARCHAR(6) NOT NULL DEFAULT '',
	Nombre VARCHAR(50) NOT NULL,
	Caption VARCHAR(100) NOT NULL,
	Clave_Menu  AS (case isnull(menu_parent,'') when '' then '' else menu_parent+'.' end+menu),
	PRIMARY KEY(Menu, Menu_parent)
);
La tabla anterior ya la trabaje para que tenga el formato de Postgre, sin embargo en el campo "Clave_menu" es donde surge mi duda.

Mientras que la segunda tabla esta asi:

Código:
CREATE TABLE dbo.Periodos_escolares(
	Periodo_escolar VARCHAR(5) PRIMARY KEY NOT NULL,
	Fecha_inicio TIMESTAMP NULL,
	Fecha_termino TIMESTAMP NULL,	
	Clave_periodo_escolar  AS ((substring(periodo_escolar,(3),(2))+'/')+substring(periodo_escolar,(5),(1)))
);
En esta tabla el problema surge con la columna "Clave_periodo", realmente nunca habia visto algo parecido, alguien podria orientarme al respecto????