
# ---------------------------------------------------------------------- #
# Drop foreign key constraints                                           #
# ---------------------------------------------------------------------- #

ALTER TABLE `ABBONAMENTO` DROP FOREIGN KEY `ATTIVITA_APPL_ABBONAMENTO`;

ALTER TABLE `ATTIVITA_APPL` DROP FOREIGN KEY `CLIFOR_ATTIVITA_APPL`;

ALTER TABLE `ATTIVITA_APPL` DROP FOREIGN KEY `COMUNE_ATTIVITA_APPL`;

ALTER TABLE `ATTIVITA_APPL` DROP FOREIGN KEY `TIPO_ATTIVITA_ATTIVITA_APPL`;

# ---------------------------------------------------------------------- #
# Drop table "ATTIVITA_APPL"                                             #
# ---------------------------------------------------------------------- #

# Remove autoinc for PK drop #

ALTER TABLE `ATTIVITA_APPL` MODIFY `id_attivitaAppl` INTEGER NOT NULL;

# Drop constraints #

ALTER TABLE `ATTIVITA_APPL` DROP PRIMARY KEY;

DROP TABLE `ATTIVITA_APPL`;
# ---------------------------------------------------------------------- #
# Add table "ATTIVITA"                                                   #
# ---------------------------------------------------------------------- #

CREATE TABLE `ATTIVITA` (
    `id_attivita` INTEGER NOT NULL AUTO_INCREMENT,
    `id_tipoAttivita` INTEGER,
    `id_clifor` INTEGER NOT NULL,
    `nomeAttivita` VARCHAR(60),
    `descrizioneAttivita` TEXT,
    `indirizzoAttivita` VARCHAR(60),
    `numeroCivicoAttivita` VARCHAR(30),
    `id_comune` INTEGER,
    `descrizioneComuneAttivita` VARCHAR(60),
    `descrizioneProvinciaAttivita` CHAR(2),
    `capComuneAttivita` CHAR(5),
    `flgGusti` INTEGER,
    `dataIscrizione` DATE,
    `codiceAttivita` VARCHAR(40),
    `noteAttivita` TEXT,
    `imgTmst` CHAR(16),
    `fglMainSxCategorie` INTEGER,
    `flgMainSxVetrinaBestseller` INTEGER,
    `flgMainSxVetrinaOfferte` INTEGER,
    `flgMainSxUltimiVisualizzati` INTEGER,
    `mainSxText` TEXT,
    `flgMainBanner` INTEGER,
    `flgMainVetrina` INTEGER,
    `flgMainVetrinaCategorie` INTEGER,
    `flgTopTelefono` INTEGER,
    `flgTopLingue` INTEGER,
    `flgTopMail` INTEGER,
    `topColoreHex` VARCHAR(7),
    `flgHeadCategorie` INTEGER,
    `flgHeadMarche` INTEGER,
    `flgHeadNewsType` INTEGER,
    `flgHeadPagine` INTEGER,
    `headColoreHex` VARCHAR(7),
    `flgDetailReviws` INTEGER,
    `flgDetailRelatedProducts` INTEGER,
    `detailDxText` TEXT,
    `flgDetailDxVetrinaBestseller` INTEGER,
    `flgDetailDxVetrinaOfferte` INTEGER,
    `flgCoupon` INTEGER,
    `flgCheckoutGuest` INTEGER,
    `accountFacebook` VARCHAR(60),
    `accountTwitter` VARCHAR(60),
    `accountInstagram` VARCHAR(60),
    `flgSocialSide` INTEGER,
    `flgFooterSocial` INTEGER,
    CONSTRAINT `PK_ATTIVITA` PRIMARY KEY (`id_attivita`)
);

CREATE UNIQUE INDEX `IDX_ATTIVITA_1` ON `ATTIVITA` (`codiceAttivita`);


# ---------------------------------------------------------------------- #
# Add table "ATTIVITA_TIPO_PAGAMENTO"                                    #
# ---------------------------------------------------------------------- #

CREATE TABLE `ATTIVITA_TIPO_PAGAMENTO` (
    `id_attivitaTipoPagamento` INTEGER NOT NULL AUTO_INCREMENT,
    `id_attivita` INTEGER,
    `id_tipoPagamento` INTEGER,
    CONSTRAINT `PK_ATTIVITA_TIPO_PAGAMENTO` PRIMARY KEY (`id_attivitaTipoPagamento`)
);




ALTER TABLE `ATTIVITA` ADD CONSTRAINT `CLIFOR_ATTIVITA` 
    FOREIGN KEY (`id_clifor`) REFERENCES `CLIFOR` (`id_clifor`);

ALTER TABLE `ATTIVITA` ADD CONSTRAINT `COMUNE_ATTIVITA` 
    FOREIGN KEY (`id_comune`) REFERENCES `COMUNE` (`id_comune`);

ALTER TABLE `ATTIVITA` ADD CONSTRAINT `TIPO_ATTIVITA_ATTIVITA` 
    FOREIGN KEY (`id_tipoAttivita`) REFERENCES `TIPO_ATTIVITA` (`id_tipoAttivita`);

ALTER TABLE `ABBONAMENTO` ADD CONSTRAINT `ATTIVITA_ABBONAMENTO` 
    FOREIGN KEY (`id_attivitaAppl`) REFERENCES `ATTIVITA` (`id_attivita`);

ALTER TABLE `ATTIVITA_TIPO_PAGAMENTO` ADD CONSTRAINT `ATTIVITA_ATTIVITA_TIPO_PAGAMENTO` 
    FOREIGN KEY (`id_attivita`) REFERENCES `ATTIVITA` (`id_attivita`);

ALTER TABLE `ATTIVITA_TIPO_PAGAMENTO` ADD CONSTRAINT `TIPO_PAGAMENTO_ATTIVITA_TIPO_PAGAMENTO` 
    FOREIGN KEY (`id_tipoPagamento`) REFERENCES `TIPO_PAGAMENTO` (`id_tipoPagamento`);





# ---------------------------------------------------------------------- #
# Drop foreign key constraints                                           #
# ---------------------------------------------------------------------- #

ALTER TABLE `ABBONAMENTO` DROP FOREIGN KEY `ATTIVITA_ABBONAMENTO`;

# ---------------------------------------------------------------------- #
# Alter table "ABBONAMENTO"                                              #
# ---------------------------------------------------------------------- #

ALTER TABLE `ABBONAMENTO` CHANGE `id_attivitaAppl` `id_attivita` INTEGER;

# ---------------------------------------------------------------------- #
# Add foreign key constraints                                            #
# ---------------------------------------------------------------------- #

ALTER TABLE `ABBONAMENTO` ADD CONSTRAINT `ATTIVITA_ABBONAMENTO` 
    FOREIGN KEY (`id_attivita`) REFERENCES `ATTIVITA` (`id_attivita`);



ALTER TABLE `ATTIVITA` CHANGE `flgDetailReviws` `flgDetailReviews` INTEGER;




ALTER TABLE `ATTIVITA` DROP FOREIGN KEY `CLIFOR_ATTIVITA`;

ALTER TABLE `ATTIVITA` DROP FOREIGN KEY `COMUNE_ATTIVITA`;

ALTER TABLE `ATTIVITA` DROP FOREIGN KEY `TIPO_ATTIVITA_ATTIVITA`;

ALTER TABLE `ABBONAMENTO` DROP FOREIGN KEY `ATTIVITA_ABBONAMENTO`;

ALTER TABLE `ATTIVITA_TIPO_PAGAMENTO` DROP FOREIGN KEY `ATTIVITA_ATTIVITA_TIPO_PAGAMENTO`;

# ---------------------------------------------------------------------- #
# Alter table "ATTIVITA"                                                 #
# ---------------------------------------------------------------------- #

ALTER TABLE `ATTIVITA` CHANGE `id_comune` `id_comuneAttivita` INTEGER;

# ---------------------------------------------------------------------- #
# Add foreign key constraints                                            #
# ---------------------------------------------------------------------- #

ALTER TABLE `ATTIVITA` ADD CONSTRAINT `CLIFOR_ATTIVITA` 
    FOREIGN KEY (`id_clifor`) REFERENCES `CLIFOR` (`id_clifor`);

ALTER TABLE `ATTIVITA` ADD CONSTRAINT `COMUNE_ATTIVITA` 
    FOREIGN KEY (`id_comuneAttivita`) REFERENCES `COMUNE` (`id_comune`);

ALTER TABLE `ATTIVITA` ADD CONSTRAINT `TIPO_ATTIVITA_ATTIVITA` 
    FOREIGN KEY (`id_tipoAttivita`) REFERENCES `TIPO_ATTIVITA` (`id_tipoAttivita`);

ALTER TABLE `ABBONAMENTO` ADD CONSTRAINT `ATTIVITA_ABBONAMENTO` 
    FOREIGN KEY (`id_attivita`) REFERENCES `ATTIVITA` (`id_attivita`);

ALTER TABLE `ATTIVITA_TIPO_PAGAMENTO` ADD CONSTRAINT `ATTIVITA_ATTIVITA_TIPO_PAGAMENTO` 
    FOREIGN KEY (`id_attivita`) REFERENCES `ATTIVITA` (`id_attivita`);


# ---------------------------------------------------------------------- #
# Alter table "ATTIVITA"                                                 #
# ---------------------------------------------------------------------- #

ALTER TABLE `ATTIVITA` ADD COLUMN `capZonaAttivita` VARCHAR(10);

ALTER TABLE `ATTIVITA` MODIFY `capZonaAttivita` VARCHAR(10) AFTER `capComuneAttivita`;


# ---------------------------------------------------------------------- #
# Alter table "ATTIVITA"                                                 #
# ---------------------------------------------------------------------- #

ALTER TABLE `ATTIVITA` ADD COLUMN `flgDefault` INTEGER;


ALTER TABLE `ATTIVITA` ADD COLUMN `telefonoAttivita` VARCHAR(40);

ALTER TABLE `ATTIVITA` ADD COLUMN `emailAttivita` VARCHAR(60);

ALTER TABLE `ATTIVITA` MODIFY `telefonoAttivita` VARCHAR(40) AFTER `capZonaAttivita`;

ALTER TABLE `ATTIVITA` MODIFY `emailAttivita` VARCHAR(60) AFTER `telefonoAttivita`;



# ---------------------------------------------------------------------- #
# Alter table "ATTIVITA"                                                 #
# ---------------------------------------------------------------------- #

ALTER TABLE `ATTIVITA` ADD COLUMN `topLingueAttivita` VARCHAR(40);

ALTER TABLE `ATTIVITA` MODIFY `topLingueAttivita` VARCHAR(40) AFTER `flgTopLingue`;


# ---------------------------------------------------------------------- #
# Alter table "ARTICOLO"                                                 #
# ---------------------------------------------------------------------- #

ALTER TABLE `ARTICOLO` ADD COLUMN `tagArticolo` VARCHAR(200);

CREATE INDEX `IDX_ARTICOLO_17` ON `ARTICOLO` (`tagArticolo`);
	



