/* @tst_clave.sql version 1.1 Santiago Velilla 17 Mayo 2014 Dpto. Informática e Ingeniería de Sistemas, Universidad Zaragoza Este script muestra si, en la tabla indicada por el primer parámetro, el conjunto de atributos especificados por el segundo parámetro constituyen, o no, una clave. uso: @tst_clave.sql nombre_tabla atributos ejemplos: @tst_clave prendas nombre @tst_clave prendas "nombre, talla, color" */ SET ECHO OFF PROMPT PROMPT listado de tuplas con valores repetidos de (&2) en la tabla &1 PROMPT -- listado de tuplas con valores repetidos select &2, count(*) veces from &1 group by &2 having count(*) > 1; PROMPT PROMPT comprobando si (&2) es una clave de la tabla &1 PROMPT select ' NO ' "es clave" from dual where exists ( select * from &1 group by &2 having count(*) > 1 ) UNION select ' SI ' "es clave" from dual where not exists ( select * from &1 group by &2 having count(*) > 1 );