source: admin/Database/ogAdmBD-1.1.0pre.sql @ d8f592d

918-git-images-111dconfigfileconfigure-oglivegit-imageslgromero-new-oglivemainmaint-cronmount-efivarfsmultivmmultivm-ogboot-installerogClonningEngineogboot-installer-jenkinsoglive-ipv6test-python-scriptsticket-301ticket-50ticket-50-oldticket-577ticket-585ticket-611ticket-612ticket-693ticket-700ubu24tplunification2use-local-agent-oglivevarios-instalacionwebconsole3
Last change on this file since d8f592d was 7da6e599, checked in by irina <irinagomez@…>, 9 years ago

#747 Consola: se calcula el número de equipos de la transerencia multicast a partir de la tabla ordenadores. En propiedades aulas se cambia 'puestos' por 'aforo'. BD: Se cambia el tipo de dato de 'aulas.puestos' a smallint.

git-svn-id: https://opengnsys.es/svn/branches/version1.1@4924 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100644
File size: 5.6 KB
Line 
1### Fichero de actualización de la base de datos.
2# OpenGnSys 1.0.6
3#use ogAdmBD
4
5# Eliminar procedimiento para evitar errores de ejecución.
6DROP PROCEDURE IF EXISTS addcols;
7# Procedimiento para actualización condicional de tablas.
8delimiter '//'
9CREATE PROCEDURE addcols() BEGIN
10        # Añadir campo para incluir aulas en proyecto Remote PC (ticket #708).
11        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
12                        WHERE COLUMN_NAME='inremotepc' AND TABLE_NAME='aulas' AND TABLE_SCHEMA=DATABASE())
13        THEN
14                ALTER TABLE aulas
15                        ADD inremotepc TINYINT DEFAULT 0;
16        END IF;
17        # Añadir campo para incluir imágenes en proyecto Remote PC (ticket #708).
18        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
19                        WHERE COLUMN_NAME='inremotepc' AND TABLE_NAME='imagenes' AND TABLE_SCHEMA=DATABASE())
20        THEN
21                ALTER TABLE imagenes
22                        ADD inremotepc TINYINT DEFAULT 0;
23        END IF;
24        # Añadir campo para clave de acceso a la API REST (ticket #708).
25        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
26                        WHERE COLUMN_NAME='apikey' AND TABLE_NAME='usuarios' AND TABLE_SCHEMA=DATABASE())
27        THEN
28                ALTER TABLE usuarios
29                        ADD apikey VARCHAR(32) NOT NULL DEFAULT '';
30        END IF;
31        # Añadir porcentaje de uso de sistema de ficheros (ticket #711)
32        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
33                        WHERE COLUMN_NAME='uso' AND TABLE_NAME='ordenadores_particiones' AND TABLE_SCHEMA=DATABASE())
34        THEN
35                ALTER TABLE ordenadores_particiones
36                        ADD uso TINYINT NOT NULL DEFAULT 0;
37        END IF;
38        # Añadir nº de serie (ticket #713)
39        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
40                        WHERE COLUMN_NAME='numserie' AND TABLE_NAME='ordenadores' AND TABLE_SCHEMA=DATABASE())
41        THEN
42                ALTER TABLE ordenadores
43                        ADD numserie varchar(25) DEFAULT NULL AFTER nombreordenador;
44        END IF;
45        # Eliminar campos no usado en inventario de hardware (ticket #713).
46        IF EXISTS (SELECT * FROM information_schema.COLUMNS
47                        WHERE COLUMN_NAME='pci' AND TABLE_NAME='tipohardwares' AND TABLE_SCHEMA=DATABASE())
48        THEN
49                ALTER TABLE tipohardwares
50                        DROP pci;
51        END IF;
52        # Añadir servidor de sincronización horaria NTP (ticket #725).
53        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
54                        WHERE COLUMN_NAME='ntp' AND TABLE_NAME='aulas' AND TABLE_SCHEMA=DATABASE())
55        THEN
56                ALTER TABLE aulas
57                        ADD ntp VARCHAR(30) AFTER proxy;
58        END IF;
59        # Directorios en repo para distintas UO (ticket #678).
60        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
61                        WHERE COLUMN_NAME='ogunit' AND TABLE_NAME='entidades' AND TABLE_SCHEMA=DATABASE())
62        THEN
63                ALTER TABLE entidades
64                        ADD ogunit TINYINT(1) NOT NULL DEFAULT 0;
65        END IF;
66        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
67                        WHERE COLUMN_NAME='directorio' AND TABLE_NAME='centros' AND TABLE_SCHEMA=DATABASE())
68        THEN
69                ALTER TABLE centros
70                        ADD directorio VARCHAR(50) DEFAULT '';
71        END IF;
72        # Nº de revisión de imagen (ticket #737).
73        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
74                        WHERE COLUMN_NAME='revision' AND TABLE_NAME='imagenes' AND TABLE_SCHEMA=DATABASE())
75        THEN
76                ALTER TABLE imagenes
77                        ADD revision SMALLINT UNSIGNED NOT NULL DEFAULT 0 AFTER nombreca;
78        END IF;
79        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
80                        WHERE COLUMN_NAME='revision' AND TABLE_NAME='ordenadores_particiones' AND TABLE_SCHEMA=DATABASE())
81        THEN
82                ALTER TABLE ordenadores_particiones
83                        ADD revision SMALLINT UNSIGNED NOT NULL DEFAULT 0 AFTER idimagen;
84        END IF;
85        # Incluir campo sistema operativo en el perfil de software (tickets #738 #713)
86        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
87                        WHERE COLUMN_NAME='idnombreso' AND TABLE_NAME='perfilessoft'  AND TABLE_SCHEMA=DATABASE())
88        THEN
89                ALTER TABLE perfilessoft
90                        ADD idnombreso SMALLINT UNSIGNED AFTER idperfilsoft;
91        END IF;
92        # Añadir campo para clave de acceso a la API REST del repositorio (ticket #743).
93        IF NOT EXISTS (SELECT * FROM information_schema.COLUMNS
94                        WHERE COLUMN_NAME='apikey' AND TABLE_NAME='repositorios' AND TABLE_SCHEMA=DATABASE())
95        THEN
96                ALTER TABLE repositorios
97                        ADD apikey VARCHAR(32) NOT NULL DEFAULT '';
98        END IF;
99END//
100# Ejecutar actualización condicional.
101delimiter ';'
102CALL addcols();
103DROP PROCEDURE addcols;
104
105# Nuevos tipos de particiones.
106INSERT INTO tipospar (codpar, tipopar, clonable) VALUES
107        (CONV('A9',16,10), 'NETBSD', 1),
108        (CONV('2700',16,10), 'WIN-RECOV', 1),
109        (CONV('8302',16,10), 'LINUX', 1),
110        (CONV('A504',16,10), 'FREEBSD', 1),
111        (CONV('A901',16,10), 'NETBSD-SWAP', 0),
112        (CONV('A902',16,10), 'NETBSD', 1),
113        (CONV('A903',16,10), 'NETBSD', 1),
114        (CONV('A904',16,10), 'NETBSD', 1),
115        (CONV('A905',16,10), 'NETBSD', 1),
116        (CONV('A906',16,10), 'NETBSD-RAID', 1),
117        (CONV('AF02',16,10), 'HFS-RAID', 1),
118        (CONV('FB00',16,10), 'VMFS', 1),
119        (CONV('FB01',16,10), 'VMFS-RESERV', 1),
120        (CONV('FB02',16,10), 'VMFS-KRN', 1)
121        ON DUPLICATE KEY UPDATE
122                codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable);
123
124# Preparar generación de claves de acceso a la API REST para el usuario principal y a la del repositorio principal (tickets #708 y #743).
125UPDATE usuarios
126        SET apikey = 'APIKEY'
127        WHERE idusuario = 1 AND apikey = '';
128UPDATE repositorios
129        SET apikey = 'REPOKEY'
130        WHERE idrepositorio = 1 AND apikey = '';
131
132# Nuevos componentes hardware (ticket #713)
133INSERT INTO tipohardwares (idtipohardware, descripcion, urlimg, nemonico) VALUES
134        (17, 'Chasis del Sistema', '', 'cha'),
135        (18, 'Controladores de almacenamiento', '../images/iconos/almacenamiento.png', 'sto'),
136        (19, 'Tipo de proceso de arranque', '../images/iconos/arranque.png', 'boo')
137        ON DUPLICATE KEY UPDATE
138                descripcion=VALUES(descripcion), urlimg=VALUES(urlimg), nemonico=VALUES(nemonico);
139
140# Número de puestos del aula permite valores hasta 32768 (ticket #747)
141ALTER TABLE  aulas
142     MODIFY puestos smallint  DEFAULT NULL;
Note: See TracBrowser for help on using the repository browser.