No Oracle, considere uma tabela T, com 50 registros e coluna...

Próximas questões
Com base no mesmo assunto
Q914443 Banco de Dados
No Oracle, considere uma tabela T, com 50 registros e colunas X, Y, ambas do tipo INT. Nesse contexto, o comando a seguir é executado. create table teste as select * from T Essa execução tem como efeito,
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é a B - a criação de uma tabela com 50 registros e todas as colunas da tabela T.

O comando CREATE TABLE AS SELECT no Oracle é utilizado para criar uma nova tabela no banco de dados a partir de um conjunto de resultados de uma consulta SELECT. Quando executamos esse comando, o Oracle cria uma nova tabela com a estrutura das colunas selecionadas e insere nela os dados que são retornados pela consulta SELECT.

No caso em questão, o comando está criando uma nova tabela chamada teste usando todos os registros (linhas) e colunas da tabela existente T. Se a tabela T tem 50 registros, a nova tabela teste também terá esses 50 registros, assumindo que não há nenhuma condição WHERE que pudesse filtrar esses registros.

Além disso, não há erro de sintaxe no comando fornecido e o comando não está criando uma view nem uma view materializada. Uma view é um objeto de banco de dados que é uma representação virtual de uma ou mais tabelas, enquanto uma view materializada é uma cópia física dos dados de uma consulta que pode ser atualizada periodicamente.

Portanto, a resposta correta é que o efeito do comando é a criação de uma tabela com 50 registros e todas as colunas da tabela T, o que está refletido na alternativa B.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

VIEWS são basicamente consultas que são sempre executadas sempre em tempo de execução

MATERIALIZED VIEWS salvam essas informações, duplicando o que se encontra em determinadas tabelas, porém com os registros mais refinados, devido às cláusulas WHERE que são integradas nessas consultas para se formar a VIEW materializada.

CREATE TABLE new_tbl [AS] SELECT * FROM orig_tbl; -> Cria uma tabela e copia os valores da tabela original.

CREATE TABLE new_tbl LIKE orig_tbl; -> Usando o 'LIKE' copia apenas as colunas da tabela original, sem valores nenhum.

https://dev.mysql.com/doc/refman/5.7/en/create-table-like.html

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo