Questão FC374523
TIPO ID DESCRIÇÃO CLASSE 1 frutas HOR 2 verduras HOR 3 grãos BAS ALIMENTO CÓDIGO NOME PREÇO CATEGORIA 1 morango 15,00 1 2 tomate 12,50 1 3 batata 8,00 2 4 alface 1,50 2 5 arroz 9,2
Projeto e Modelagem de Dados
Instituto Consulplan · 2023
| TIPO |
||
| ID |
DESCRIÇÃO | CLASSE |
| 1 | frutas | HOR |
| 2 | verduras | HOR |
| 3 | grãos | BAS |
| ALIMENTO |
|||
| CÓDIGO |
NOME |
PREÇO |
CATEGORIA |
| 1 | morango |
15,00 | 1 |
| 2 | tomate | 12,50 |
1 |
| 3 | batata | 8,00 | 2 |
| 4 | alface | 1,50 | 2 |
| 5 | arroz | 9,20 | 3 |
Assinale a alternativa que contém o script SQL para geração das tabelas apresentadas, considerando um SGBD MS SQL SERVER.
- CREATE TABLE tipo (
id int NOT NULL,
descricao varchar(20),
classe varchar(3) NOT NULL
);
ALTER TABLE tipo ADD CONSTRAINT PK_1 PRIMARY KEY (id);
CREATE TABLE alimento (
codigo int not NULL primary key,
nome varchar(40),
preco numeric(12,2),
categoria int,
CONSTRAINT FK_2 FOREIGN KEY (categoria) REFERENCES tipo(id)
);
- create table tipo (
id int NOT NULL UNIQUE PRIMARY KEY,
descricao varchar(20),
classe char(3)
);
create table alimento (
codigo int not NULL AUTOINC,
nome varchar(40),
preco float(12,2),
categoria char(3),
);
ALTER TABLE ALIMENTO ADD CONSTRAINT PK_1 PRIMARY KEY (codigo);
ALTER TABLE ALIMENTO ADD CONSTRAINT FK_2 FOREIGN KEY (categoria);
- CREATE TABLE tipo (
PRIMARY KEY int id,
char descricao ,
char classe
);
CREATE TABLE alimento (
primary key int codigo ,
char nome,
float preco ,
NOT NULL int categoria,
);
ALTER TABLE alimento ADD FOREIGN KEY categoria REFERENCES tipo(id)
- CREATE TABLE tipo (
id int PRIMARY KEY,
descricao varchar(3),
classe char
);
CREATE TABLE alimento (
id int PRIMARY KEY,
nome varchar(40),
preco float(12,2),
categoria char FOREIGN KEY tipo(classe) REFERENCES id,
);
Mostrar resposta e comentário
Gabarito
A
Comentário do professor
A alternativa apresenta corretamente a sequência de comandos para o SGBD MS SQL Server. O script cria primeiro a tabela tipo, definindo colunas com tipos apropriados: id int NOT NULL, descricao varchar(20) e classe varchar(3) NOT NULL.
Em seguida aplica-se ALTER TABLE para adicionar a restrição de chave primária (PRIMARY KEY) sobre id, garantindo unicidade e indexação da tabela referenciada.
A tabela alimento é criada com codigo int NOT NULL PRIMARY KEY (chave primária inline), nome varchar(40), preco numeric(12,2) (precisão/escala adequadas para valores monetários) e categoria int.
Por fim, a cláusula CONSTRAINT FK_2 FOREIGN KEY (categoria) REFERENCES tipo(id) estabelece a integridade referencial entre alimento.categoria e tipo.id, impedindo categorias inexistentes.
Estrutura e nomes de tipos são compatíveis com o conjunto de dados apresentado e com as boas práticas de modelagem relacional.
Conteúdo do catálogo FC Concursos · Atualizado em