SóProvas


ID
2847814
Banca
Quadrix
Órgão
SEDF
Ano
2018
Provas
Disciplina
Banco de Dados
Assuntos

A respeito dos conceitos e comandos SQL SERVER e DB2 e dos bancos de dados textuais, julgue o item.

No DB2, para realizar a exclusão de uma coluna, a palavra reservada COLUMN é requerida e deve ser fornecida no comando ALTER TABE.

Alternativas
Comentários
  • DB2 é um Sistema Gerenciador de Banco de Dados Relacionais (SGDBR) produzido pela IBM. Existem diferentes versões do DB2 que rodam desde num simples PDA|computador de mão, até em potentes mainframes e funcionam em servidores baseados em sistemas Unix, Windows, ou Linux.

    Command Line Editor para a operação via linha de comando.


    DB2 pode ser administrado tanto em uma interface de comandos de linhas ou em um ambiente gráfico. A interface de comando de linha requer mais conhecimento do produto mas pode ser mais facilmente automatizado. O ambiente gráfico é uma multi-plataforma Java que contem uma grande variedade de wizards para usuários iniciantes.



  • ALTER TABLE - DROP COLUMN

    Para excluir uma coluna de uma tabela, use a seguinte sintaxe (observe que alguns sistemas de banco de dados não permitem a exclusão de uma coluna):


    ALTER TABLE table_name

    DROP COLUMN column_name;


    Fonte: https://www.w3schools.com/sql/sql_alter.asp

  • We acordo com https://www.ibm.com/support/knowledgecenter/en/SSEPGG_11.1.0/com.ibm.db2.luw.admin.dbobj.doc/doc/t0020132.html No DB2 11.1 a forma de deletar uma coluna é usando alter table e drop column, então não entendo por que a questão considera errada.
  • Pelo visto o erro está em um absurdo: na expressão "ALTER TABE", que deveria ser "ALTER TABLE".

  • "No DB2, para realizar a exclusão de uma coluna, a palavra reservada COLUMN é requerida e deve ser fornecida no comando ALTER TABE."

    Partindo do ponto que a Banca esqueceu de colocar um L no comando ALTER TABE (Certo seria ALTER TABLE), a questão ainda possui erros.

    A questão fala que para realizar uma exclusão utilizamos a palavra COLUMN? Só com essa afirmação é suspeita e estranha.

    Sintaxe de ALTER TABLE:

    ALTER TABLE <table> <action>

    Sendo que:

    <table> -------> O nome da tabela a ser alterada.

    <action> ------> A ação que deve ser executada para a tabela especificada

    O comando ALTER TABLE usa as seguintes entradas para <action>:

    ...

    DROP [COLUMN] : Descarte uma coluna. Quaisquer restrições que dependerem da coluna descartada serão automaticamente descartadas também. Esta entrada não pode ser especificada em um bloco de transação. Não é possível descartar uma coluna de distribuição, um coluna "organizar em" ou a última coluna restante em uma tabela.

    Se você descartar uma coluna e desejar reutilizar seu nome, primeiro execute o comando GROOM TABLE <tablename> VERSIONS; caso contrário, pode haver erros.

    Ou seja, não utilizamos a palavra reservada COLUMN para exclusão de uma coluna e sim a palavra DROP seguida do nome da coluna.

    Gabarito E

  • O Invoker tá redondamente enganado. COLUNM, assim como DROP e ALTER, são palavras reservadas do DB2. Sem entrar na polêmica, cito o que consta na documentação oficial da IBM acerca deste comando, que é o seguinte[1]:

    Sintaxe para alterar uma tabela:

    ALTER TABLE <table> <action> [ORGANIZE ON {(<columns>) | NONE}]

    Em que <action> pode ser um dos seguintes:

    (...)

    DROP [COLUMN] column_name[,column_name…] {CASCADE | RESTRICT } |

    (...)

    Outra fonte[2], afirma o mesmo:

    Sometimes, you may want to delete one or more unused columns from a table. To do this, you use the ALTER TABLE DROP COLUMN statement as follows:

    ALTER TABLE table_name

    DROP COLUMN column_name;

    ALTER TABLE table_name

    DROP COLUMN column_name;

    In this syntax:

    First, specify the name of the table from which you want to drop the column in the ALTER TABLE clause.

    Second, specify the name of the column that you want to delete in the DROP COLUMN clause.

    Portanto, Invoker, muito cuiidado. O único erro eh a bizarrice TABE, ao invés de TABLE. O resto tá certo.

    Fonte:

    [1] https://www.ibm.com/support/knowledgecenter/pt-br/SSULQD_7.1.0/com.ibm.nz.dbu.doc/r_dbuser_alter_table.html

    [2]