Após criar a tabela Processo no Sistema Gerenciador de Banco de Dados SQL Server, para definir uma restrição que especifica que o campo AnoProcesso só poderá receber números inteiros maiores do que 2014, o Técnico deve utilizar a instrução
AADD CONSTRAINT Processo CHECK (AnoProcesso>2014);
BALTER TABLE Processo ADD CHECK (AnoProcesso>2014);
CADD CONSTRAINT (AnoProcesso>2014) FROM Processo;
DCREATE CONSTRAINT Chk_Processo FROM Processo CHECK (AnoProcesso>2014);
EALTER TABLE Processo ADD CONSTRAINT (AnoProcesso>2014);
Revelar gabarito e comentário▾
GabaritoB — ALTER TABLE Processo ADD CHECK (AnoProcesso>2014);
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
SQL Server: Adicionando CHECK constraint em tabela existente
Gabarito: letra B. A sintaxe correta no SQL Server para adicionar uma restrição CHECK em uma tabela já criada é ALTER TABLE nome_da_tabela ADD CHECK (condição);, que permite definir a validação sem nomear a restrição. A alternativa B segue exatamente essa forma.
A banca testa o conhecimento da sintaxe DDL do SQL Server para manipulação de constraints. O comando ALTER TABLE é usado para modificar a estrutura de uma tabela existente, e a cláusula ADD permite incluir novas restrições, como CHECK, PRIMARY KEY, FOREIGN KEY, etc.
Alternativa A — ❌ Incorreta
Falta o comando ALTER TABLE antes de ADD CONSTRAINT. A instrução está solta, não vinculada a uma tabela, portanto não é executável.
Alternativa B — ✅ Correta ⟵ GABARITO
Usa a sintaxe ALTER TABLE Processo ADD CHECK (AnoProcesso>2014);, que é perfeitamente válida no SQL Server para adicionar um CHECK constraint sem nome. A condição está entre parênteses e a tabela é especificada.
Alternativa C — ❌ Incorreta
A construção ADD CONSTRAINT (condição) FROM tabela não existe. O correto seria ALTER TABLE ... ADD CONSTRAINT nome CHECK (condição). A palavra FROM não faz parte da sintaxe de constraints.
Alternativa D — ❌ Incorreta
Não existe comando CREATE CONSTRAINT dessa forma no SQL Server. Constraints são criadas com ALTER TABLE ... ADD CONSTRAINT ou diretamente no CREATE TABLE.
Alternativa E — ❌ Incorreta
Embora comece com ALTER TABLE Processo ADD CONSTRAINT, a sintaxe está errada: após CONSTRAINT deve vir um nome (ou, se for anônimo, usa-se ADD CHECK diretamente). Aqui colocou (AnoProcesso>2014) como se fosse o nome, mas o nome não pode ser uma expressão. A forma correta sem nome é ADD CHECK (AnoProcesso>2014).
PEGA ESSA DICA!
No SQL Server, para adicionar uma constraint CHECK sem nome, use ALTER TABLE tabela ADD CHECK (condição). Caso queira nomeá-la, a sintaxe é ALTER TABLE tabela ADD CONSTRAINT nome CHECK (condição). Ambas são válidas, mas a questão cobrou a versão sem nome na alternativa correta.