Na empresa GeniusDatabase, o engenheiro de dados Billy enviou o seguinte script para que você execute em um típico SGBD Oracle. Supondo que a sintaxe esteja correta, escolha a única alternativa correta:

Questão

Na empresa GeniusDatabase, o engenheiro de dados Billy enviou o seguinte script para que você execute em um típico SGBD Oracle. Supondo que a sintaxe esteja correta, escolha a única alternativa correta:

Imagem 1

ALTER TABLE T_SIP_PEDIDO_VENDA ADD CONSTRAINT CK_SIP_VAL_TOT_PEDIDO CHECK ( VL_TOT_PEDIDO > 0 );

Alternativas

A) Esse comando irá criar uma restrição sobre a coluna VL_TOT_PEDIDO que pertence à tabela T_SIP_PEDIDO_VENDA e pedidos com valor total de venda menor ou igual a zero não serão permitidos.

96%

B) Esse comando irá criar uma coluna chamada VL_TOT_PEDIDO dentro da tabela T_SIP_PEDIDO_VENDA e pedidos com valor total de venda menor ou igual a zero não serão permitidos.

C) Esse comando irá criar uma coluna chamada VL_TOT_PEDIDO dentro da tabela T_SIP_PEDIDO e pedidos com valor total de venda maior do que zero não serão permitidos.

D) Esse comando irá criar uma restrição sobre a coluna VL_TOT_PEDIDO que pertence à tabela T_SIP_PEDIDO_VENDA e pedidos com valor total de venda maior ou igual a zero não serão permitidos.

E) Esse comando irá criar somente uma restrição sobre toda a tabela T_SIP_PEDIDO_VENDA, afetando todas as colunas, e pedidos contendo o valor total de venda menor do que zero não serão permitidos.

Explicação

O script apresentado é:

ALTER TABLE T_SIP_PEDIDO_VENDA
ADD CONSTRAINT CK_SIP_VAL_TOT_PEDIDO
CHECK ( VL_TOT_PEDIDO > 0 );

Passo a passo:

  1. ALTER TABLE T_SIP_PEDIDO_VENDA indica que uma alteração será feita na tabela T_SIP_PEDIDO_VENDA.
  2. ADD CONSTRAINT CK_SIP_VAL_TOT_PEDIDO cria uma restrição (constraint) do tipo CHECK, com o nome CK_SIP_VAL_TOT_PEDIDO.
  3. CHECK (VL_TOT_PEDIDO > 0) impõe a regra de integridade: o valor da coluna VL_TOT_PEDIDO deve ser estritamente maior que zero.
    • Portanto, valores 0 e valores negativos (isto é, VL_TOT_PEDIDO0VL\_TOT\_PEDIDO \le 0) não serão permitidos em inserções/atualizações.

Analisando as alternativas:

  • (A) descreve exatamente: cria uma restrição e impede 0\le 0. Correta.
  • (B) e (C) falam em criar coluna (isso seria ADD column_name ...), o que não ocorre.
  • (D) diz que valores 0\ge 0 não seriam permitidos, mas a regra permite valores positivos e proíbe 0\le 0.
  • (E) sugere que a restrição afeta “todas as colunas”; embora o CHECK seja uma constraint de tabela, a expressão referencia VL_TOT_PEDIDO, logo a regra se aplica ao valor dessa coluna conforme a condição (não “todas as colunas”). Além disso, também proíbe o zero, e não apenas valores menores que zero.

Alternativa correta: (A).

Questões relacionadas

Ver últimas questões

Comece a estudar de forma inteligente hoje mesmo

Resolva questões de concursos e vestibulares com IA, gere simulados personalizados e domine os conteúdos que mais caem nas provas.

Cancele quando quiser.