Ao projetar um banco de dados, muitas vezes se faz necessário criar controles para restringir os dados de uma coluna em relação a outras colunas ou linhas, portanto é possível definir restrições em colunas e tabelas. As restrições oferecem todo o controle sobre os dados nas suas tabelas conforme desejar. Considerando um banco de dados PostgreSQL, é correto afirmar que:
I) Uma restrição de chave primária indica que uma coluna ou grupo de colunas pode ser usado como um identificador exclusivo para linhas na tabela. Isso exige que os valores sejam únicos, porém permite valores nulos.
II) Uma restrição de chave estrangeira especifica que os valores em uma coluna (ou um grupo de colunas) devem corresponder aos valores que aparecem em alguma linha de outra tabela.
III) Uma restrição NOT NULL simplesmente especifica que uma coluna não deve assumir o valor nulo.
IV) As restrições exclusivas asseguram que os dados contidos em uma coluna, ou um grupo de colunas, sejam únicos entre todas as linhas na tabela.
V) Uma coluna com restrição UNIQUE automaticamente também tem a propriedade NOT NULL, e, portanto, pode ser identificada como a chave primária da tabela.
Assinale a alternativa que apresenta as afirmativas corretas.