SóProvas


ID
5522368
Banca
CEFET-MG
Órgão
CEFET-MG
Ano
2021
Provas
Disciplina
Banco de Dados
Assuntos

A questão refere-se à execução das expressões SQL a seguir, em um SGBD PostgreSQL 9.6 ou superior.

CREATE TABLE disciplinas
(
     disciplina varchar(6) not null,
     descricao varchar(80) not null,
     constraint disciplinas_pk primary key (disciplina)
);
COMMENT ON TABLE disciplinas IS ‘Tabela que registra as disciplinas’;

INSERT INTO disciplinas VALUES(‘POR001’,‘PORTUGUÊS’);
INSERT INTO disciplinas VALUES(‘MAT001’,‘MATEMÁTICA’);
INSERT INTO disciplinas VALUES(‘HIS001’,‘HISTÓRIA’);

CREATE TABLE alunos
(
       matricula varchar(6) not null,
        nome varchar(80) not null,
        constraint alunos_pk primary key (matricula)
);
COMMENT ON TABLE alunos IS ‘Tabela que registra os alunos’;

INSERT INTO alunos VALUES(‘202101’,‘JOÃO’);
INSERT INTO alunos VALUES(‘202102’,‘JOSÉ’);
INSERT INTO alunos VALUES(‘202103’,‘MARIA’);
INSERT INTO alunos VALUES(‘202104’,‘JOAQUIM’);
CREATE TABLE turmas
(
      turma varchar(1) not null,
      disciplina varchar(6) not null,
      matricula varchar(6) not null,
      constraint disciplinas_fk foreign key (disciplina)
      references disciplinas (disciplina),
       constraint alunos_fk foreign key (matricula) references
alunos (matricula)
);
COMMENT ON TABLE turmas IS ‘Tabela que registra as disciplinas em que os alunos estão matriculados’;

INSERT INTO turmas VALUES(‘A’,‘POR001’,‘202101’);
INSERT INTO turmas VALUES(‘A’,‘POR001’,‘202102’);
INSERT INTO turmas VALUES(‘B’,‘MAT001’,‘202101’);
INSERT INTO turmas VALUES(‘B’,‘MAT001’,‘202103’);
INSERT INTO turmas VALUES(‘C’,‘HIS001’,‘202102’);
INSERT INTO turmas VALUES(‘C’,‘HIS001’,‘202104’);

Deseja-se fazer um comando SQL para apagar todos os registros da tabela turmas, preservando a tabela. O comando SQL desejado é

Alternativas
Comentários
  • O comando TRUNCATE TABLE remove todas as linhas de uma tabela sem registrar as exclusões de linhas individuais. TRUNCATE TABLE é como a instrução DELETE, porém sem usar a cláusula WHERE. Portanto, é usada para apagar completamente o conteúdo de uma tabela 

  • O comando TRUNCATE TABLE remove todas as linhas de uma tabela sem registrar as exclusões de linhas individuais – ou seja, remove o conteúdo de uma tabela em uma única instrução , funciona como a instrução DELETE, porém sem usar a cláusula WHERE. Entretanto, essa instrução é mais rápida e utiliza menos recursos de sistema e log de transações.

    Exemplo: