
--USE MASTER
--GO
--ALTER DATABASE Gestao_Conf SET SINGLE_USER WITH ROLLBACK IMMEDIATE
--DROP DATABASE Gestao_Conf
--GO
CREATE DATABASE Gestao_Conf
GO
USE Gestao_Conf


CREATE TABLE  INSTITUICAO (
nome			VARCHAR(30)			NOT NULL	PRIMARY KEY,
endereco		VARCHAR(20)			NOT NULL,
);

CREATE TABLE PESSOA (
nome			VARCHAR(15)			NOT NULL,
email			VARCHAR(30)			NOT NULL	PRIMARY KEY,
Inome			VARCHAR(30)			NOT NULL    FOREIGN KEY REFERENCES INSTITUICAO(nome)
);


CREATE TABLE AUTOR (
Pemail			VARCHAR(30)			FOREIGN KEY REFERENCES PESSOA(email)			PRIMARY KEY
);

CREATE TABLE PARTICIPANTE (
Pemail			VARCHAR(30)			NOT NULL    FOREIGN KEY REFERENCES PESSOA(email),
nome			VARCHAR(30)			NOT NULL,
morada			VARCHAR(20),
email			VARCHAR(30)			NOT NULL										PRIMARY KEY,
instituicao		VARCHAR(30)			NOT NULL,
data_inscricao  date				NOT NULL
);

CREATE TABLE ESTUDANTE (
Pemail			VARCHAR(30)			NOT NULL    FOREIGN KEY REFERENCES PARTICIPANTE(email)		PRIMARY KEY,
comprovativo	VARCHAR(30)			NOT NULL,
localizacao		VARCHAR(30)			NOT NULL,
);

CREATE TABLE NAO_ESTUDANTE (
Pemail			VARCHAR(30)			FOREIGN KEY REFERENCES PARTICIPANTE(email)		PRIMARY KEY,
ref_transacao	INT                 NOT NULL    UNIQUE
);

CREATE TABLE ARTIGO (
titulo			VARCHAR(30)			NOT NULL,
num_registo		INT					NOT NULL										PRIMARY KEY,
);

CREATE TABLE AUTOR_ARTIGO (
id				INT					NOT NULL			IDENTITY(1,1)				PRIMARY KEY,
Pemail			VARCHAR(30)			NOT NULL            FOREIGN KEY REFERENCES PARTICIPANTE(email)		,
Anum_registo	INT					NOT NULL            FOREIGN KEY REFERENCES ARTIGO(num_registo),
);


