Nao entendo o check(cargo in...) nao esta explicado no video e logo depois o -- cargo enum...
CARGO VARCHAR(20) NOT NULL CHECK(CARGO IN('DIRETOR', 'FUNCIONARIO')),
--CARGO ENUM('DIRETOR', 'FUNCIONARIO') NOT NULL,
Nao entendo o check(cargo in...) nao esta explicado no video e logo depois o -- cargo enum...
CARGO VARCHAR(20) NOT NULL CHECK(CARGO IN('DIRETOR', 'FUNCIONARIO')),
--CARGO ENUM('DIRETOR', 'FUNCIONARIO') NOT NULL,
Olá janile,
o --
é uma marcação de comentário. Na verdade esta linha
CARGO ENUM('DIRETOR', 'FUNCIONARIO') NOT NULL,
faz a mesma coisa que essa linha
CARGO VARCHAR(20) NOT NULL CHECK(CARGO IN('DIRETOR', 'FUNCIONARIO'))
A ideia deste comando é criar uma coluna chamada de CARGO
com uma restrição de que os únicos valores possíveis desta coluna são DIRETOR
ou FUNCIONARIO
. Tanto que o comando CHECK(...)
quer dizer que você vai adicionar uma condição nesta coluna, ou seja, um novo registrado para ser válido precisa passar por esta condição. No caso a condição é CARGO IN('DIRETOR', 'FUNCIONARIO')
que indica que cargo precisa ter um destes 2 valores dentro dos parênteses.
Já o comando análogo de ENUM('DIRETOR', 'FUNCIONARIO')
indica que o tipo do cargo é um um valor que seja DIRETOR
ou FUNCIONARIO
. Por isso que ele se comporta do mesmo jeito que com o CHECK
.