Omet navegació

Exercicis

Exercicis

En la Base de Dades geo_grup_9999x:

7.12.- Crear un trigger anomenat TR_ALT_POS que controle que l'altura d'una nova població siga estrictament positiva. La funció en la qual es basa es pot anomenar ALT_POS.

7.13.- Modificar l'anterior per a que ho controle també quan es tracta d'una modificació.

7.14.- Crear un trigger anomenat TR_EXT_0_1000 que controle que l'extensió d'un municipi (població) estiga obligatòriament entre 0 i 1000, i ha de ser sempre, tant si s'insereix una nova població com si es modifica. Però en aquesta ocasió, en compte de traure un error, el que farem serà modificar aquest valor: si és major que 1000, li donarem el valor 1000, i si és negatiu li posarem 0. Ho aconseguirem modificant NEW.extensio, i com la funció del trigger torna sempre NEW, doncs agafarà el nou valor. Anomeneu a la funció EXT_0_1000

7.15.- VOLUNTARI. En la taula POBLACIONS3 tenim controlat que la latitud introduïda siga correcta per mig del tipus lat, però no en la taula POBLACIONS, on és de tipus VARCHAR(50) i per tant es podria introduir una latitud incorrecta molt fàcilment. Crea un trigger que controle que quan s'introdueix o es modifica la latitud de POBLACIONS siga correcta. Per a això

  • Els caràcters 1 i 2 han de ser els graus, que han d'estar entre 00 i 90
  • El caràcter 3 ha de ser º
  • Els caràcters 4 i 5 formen els minuts, i han d'estar entre 00 i 59
  • El caràcter 6 ha de ser '
  • Els caràcters 7 i 8 formen els segons, i han d'estar entre 00 i 59
  • El caràcter 9 ha de ser "
  • El caràcter 10 ha de ser N o S
  • Si no s'acompleix alguna de les restriccions anteriors, ha d'eixir un error dient que la latitud ha d'estar entre 00º00'00"N i 90º00'00"N , o entre 00º00'00"S i 90º00'00"S