Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Questão: Aspas simples e aspas comuns

Aspas simples e Aspas comuns

Vimos que todo texto é passado através de aspas simples ('). Posso passar aspas duplas (") no lugar?

R. Isso não é uma verdade absoluta, pois ao se utilizar o insert isso não ocorre:

17:43:52 SQL> insert into teste (teste) values ('teste1');

1 row created.

Elapsed: 00:00:00.10
17:44:10 SQL> insert into teste (teste) values ("teste1");
insert into teste (teste) values ("teste1")
                                  *
ERROR at line 1:
ORA-00984: column not allowed here

As aspas duplas em oracle geralmente servem para diferenciar o case (high ou low) na criação de uma tabela por exemplo:

17:52:11 SQL> select table_name from user_tables where table_name in ('TESTE','TeStE');

TABLE_NAME
------------------------------
TESTE
TeStE

Elapsed: 00:00:00.11
17:52:15 SQL> select table_name from user_tables where table_name in ('TESTE',"TeStE");
select table_name from user_tables where table_name in ('TESTE',"TeStE")
                                                                *
ERROR at line 1:
ORA-00904: "TeStE": invalid identifier


Elapsed: 00:00:00.12

Acredito que essa questão tenha vindo a partir do curso MySQL, onde o comportamento é diferente.

Resumindo: Gostaria que fosse corrigida a resposta e que minha resposta fosse validada.

Att Vitor Jr.

5 respostas

Faltou o exemplo da criação das tabelas demonstrando a utilização das aspas duplas:

17:50:38 SQL> create table teste2 as select * from teste;

Table created.

Elapsed: 00:00:00.08
17:50:48 SQL> create table "TeStE" as select * from teste;

Table created.

Elapsed: 00:00:00.05

Oi Vitor, acabei vendo sua mensagem aqui. Não se preocupe, estou encaminhando para o Rômulo. Só fique de olho no fórum para quando ele lhe responder.

Já agradeço por ele antecipadamente um Feedback tão detalhado, que aliás deveria valer 10.000 pontos :)

Boa tarde Flávio, tudo bem? :) Agradeço sua resposta. Também já havia encaminhado para o Maurício, com quem já tive um contato em uma avaliaçao de outro curso, para que ele pudesse encaminhar para o autor do curso sobre Oracle.

Sobre o elogio pelo feedback, agradeço da mesma forma! Acho importante colaborarmos para o crescimento da plataforma e daqueles que a usam. :)

Qualquer necessidade estou a disposição.

Um grande abraço!

att

Vitor Jr.

solução!

Boa tarde Vitor! Você tem razão, as strings no Oracle não podem ser representadas utilizando aspas duplas. Eu já corrigi a resposta da questão. Peço que você responda a questão novamente, por favor, assim sua resposta será validada. Muito obrigado pelo seu feedback :)

Se não houver mais nenhuma dúvida, e estiver tudo certo, não esqueça de marcar a minha resposta como solução :)

Boa tarde Rômulo!

Alterei lá a resposta, mas sobre marcar como solução, acho que eu devia marcar a minha própria resposta no caso... rsrsrsrs. :)

Brincadeira, já marquei e obrigado pela atenção.

att Vitor Jr.