Questão nº 39
Questão de Tecnologia da Informação · FCC TRE-PR 2017 (nº 39)
Um Programador deseja realizar uma consulta na tabela Advogado, para obter o conteúdo de cada palavra do campo NomeAdvogado com as letras iniciais maiúsculas, já que alguns nomes foram cadastrados em letras minúsculas. Para isso, utilizou o comando abaixo.
```
SELECT I (NomeAdvogado) FROM Advogado;
```
A lacuna I deve ser preenchida corretamente com
- AINITCAP no Oracle e UPPERCASE no PostgreSQL.
- BCAPTALIZE, tanto no Oracle quanto no PostgreSQL.
- CUPPER no Oracle e INITCASE no PostgreSQL.
- DCAPTALIZE no PostgreSQL e INITCAP no Oracle.
- EINITCAP, tanto no Oracle quanto no PostgreSQL. (alternativa correta)
Resposta comentada
Gabarito Alternativa E
A função INITCAP é usada para formatar textos, transformando a primeira letra de cada palavra em maiúscula e as demais em minúsculas, ideal para padronizar nomes próprios.
- (A) Incorreta: Embora
INITCAPesteja correto para Oracle,UPPERCASEnão é a função equivalente no PostgreSQL para capitalização inicial;INITCAPfunciona no PostgreSQL também. A armadilha aqui é a suposição de que cada banco de dados tem um nome de função completamente diferente para a mesma operação, eUPPERCASEsoa como uma alternativa plausível, mas faria todas as letras maiúsculas. - (B) Incorreta:
CAPTALIZE(ouCAPITALIZE) não é uma função SQL padrão para essa finalidade nem no Oracle nem no PostgreSQL. - (C) Incorreta:
UPPERtransforma todas as letras em maiúsculas, não apenas as iniciais.INITCASEnão é uma função padrão no PostgreSQL. - (D) Incorreta:
CAPTALIZEestá incorreto para PostgreSQL. - (E) Correta: A função INITCAP é a correta e funciona tanto no Oracle quanto no PostgreSQL para capitalizar a primeira letra de cada palavra em uma string.
Fonte: FCC TRE-PR 2017 Técnico Judiciário - Área Apoio Especializado - Especialidade Programação de Sistemas (Caderno Tipo 1). Reproduzida para fins de estudo.