use database;

-- On execute TOUT ou RIEN
START TRANSACTION;

-- 
-- 27/07/2015
-- Rajouter la table organismes
-- Structure de la table organismes
-- 

CREATE TABLE IF NOT EXISTS `organismes` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

-- Contenu de la table `organismes`

INSERT INTO `organismes` (`id`, `nom`) VALUES
(1, 'CNRS'),
(2, 'UPS'),
(3, 'Ird');


-- -------------------------------------------------------------------------------------------------------------
-- 27/07/2015
-- Rajouter la table type_suivis 
-- Structure de la table `type_suivis`
--

CREATE TABLE IF NOT EXISTS `type_suivis` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

-- Contenu de la table `type_suivis`

INSERT INTO `type_suivis` (`id`, `nom`) VALUES
(1, 'Etalonnage'),
(2, 'Maintenance');


-- -------------------------------------------------------------------------------------------------------------
-- 27/07/2015
-- Rajouter la table documents 
-- Structure de la table `documents`
--

CREATE TABLE IF NOT EXISTS `documents` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `type_doc` varchar(20) DEFAULT NULL,
  `chemin` varchar(60) DEFAULT NULL,
  `materiel_id` int(11) NOT NULL,
  `suivi_id` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `fk_documents_materiel_id` (`materiel_id`),
  KEY `fk_documents_suivi_id` (`suivi_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

-- Contraintes pour la table `documents`

ALTER TABLE `documents`
  ADD CONSTRAINT `fk_documents_materiel_id` FOREIGN KEY (`materiel_id`) REFERENCES `materiels` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  ADD CONSTRAINT `fk_documents_suivi_id` FOREIGN KEY (`suivi_id`) REFERENCES `suivis` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION;


-- -------------------------------------------------------------------------------------------------------------
-- 27/07/2015
-- MODIF TABLE MATERIELS

-- Structure de la table `materiels`
ALTER TABLE `materiels` ADD `date_reception` date DEFAULT NULL;
-- ALTER TABLE `materiels` ADD `organisme` varchar(20) DEFAULT NULL;
ALTER TABLE `materiels` ADD `organisme_id` int(11) DEFAULT NULL;
-- ALTER TABLE `materiels` ADD `lieu_stockage` varchar(45) DEFAULT NULL;
ALTER TABLE `materiels` ADD `site_id` int(11) DEFAULT '2';


-- -----------------------------------------------------------------------------------------------------------
-- 27/07/2015
-- Rajouter la table sites 
-- Structure de la table `sites`
--

CREATE TABLE IF NOT EXISTS `sites` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

INSERT INTO `sites` (`id`, `nom`) VALUES
(1, 'Roches'),
(2, 'Belin'),
(3, 'Tarbes'),
(4, 'CNES');


-- -----------------------------------------------------------------------------------------------------------
-- Contraintes pour la table `materiels`
set foreign_key_checks=0;

ALTER TABLE `materiels`
  ADD CONSTRAINT `fk_materiels_organisme_id` FOREIGN KEY (`organisme_id`) REFERENCES `organismes` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  ADD CONSTRAINT `fk_materiels_site_id` FOREIGN KEY (`site_id`) REFERENCES `sites` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION;

-- requete pour remplir le champ organisme_id 
update materiels set organisme_id = NULL where organisme is NULL;
update materiels set organisme_id ="1" where organisme like "CNRS%";
update materiels set organisme_id ="2" where organisme like "UPS%";
update materiels set organisme_id ="3" where organisme like "Ird%";

-- requete pour remplir le champ site_id 
update materiels set site_id = NULL where lieu_stockage is NULL;
update materiels set site_id ="1" where lieu_stockage like "Belin%";
update materiels set site_id ="2" where lieu_stockage like "Roche%";
update materiels set site_id ="3" where lieu_stockage like "Tarbes%";

alter table `materiels` drop `organisme`;
alter table `materiels` drop `lieu_stockage`;


COMMIT;