O comando SQL abaixo foi executado em um banco de dados de um SGDB MySQL, versão atualizada, com a finalidade de criar uma tabela nomeada como tb_cliente.Após a criação da tabela tb_cliente, qual das alternativas abaixo apresenta um comando SQL adequado que irá inserir um novo registro na tabela?
AINSERT tb_cliente (id, nome, email) INFO (1, 'Fulano', null);
BINSERT INTO tb_cliente (nome, email) VALUES ('Fulano', '[email protected]');
CINSERT IN tb_cliente (1, Fulano, [email protected]);
DINSERT INTO tb_cliente (id, nome) INFO (1, Fulano);
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Comando INSERT INTO em SQL
Gabarito: letra B. A alternativa B é a única que apresenta a sintaxe correta do comando INSERT INTO, que exige a cláusula VALUES para especificar os valores a serem inseridos, com a lista de colunas entre parênteses e os valores correspondentes na mesma ordem. As demais alternativas contêm erros de sintaxe, como a ausência da palavra INTO, o uso incorreto de INFO ou IN em vez de INTO, ou a falta da cláusula VALUES.
O comando INSERT INTO é a instrução fundamental da linguagem SQL para adicionar novos registros (linhas) a uma tabela existente. Sua sintaxe básica, conforme o padrão ANSI e adotada pela maioria dos SGBDs, incluindo o MySQL, é:
A estrutura é composta por duas partes principais: a lista de colunas, que especifica em quais colunas os dados serão inseridos, e a lista de valores, que fornece os dados correspondentes. A ordem das colunas na lista deve corresponder à ordem dos valores na cláusula VALUES. É importante notar que a lista de colunas é opcional; se omitida, o comando assume que os valores serão fornecidos para todas as colunas da tabela, na ordem em que foram definidas na estrutura da tabela.
A cláusula VALUES é obrigatória e introduz a lista de valores a serem inseridos. Cada valor pode ser uma constante, uma expressão ou a palavra-chave NULL para indicar ausência de dado. Os valores devem ser separados por vírgulas e, para tipos de dados como texto, devem estar entre aspas simples. A palavra-chave NULL não precisa de aspas, pois é uma palavra reservada do SQL.
A pegadinha clássica desta questão é a troca de INTO por INFO ou IN, além da omissão da cláusula VALUES. A banca explora o candidato que decora a sintaxe sem entender a estrutura. Para acertar, basta lembrar que o comando é INSERT INTO e que a cláusula VALUES é indispensável para fornecer os dados.
1INSERT INTO
2nome da tabela
3(colunas)
4VALUES
5(valores)
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
A alternativa A usa INFO em vez de INTO. A palavra INFO não existe no comando SQL; o correto é INSERT INTO. Além disso, a sintaxe INSERT tb_cliente (id, nome, email) INFO (1, 'Fulano', null); está incorreta porque falta a cláusula VALUES e a palavra INTO. O comando correto seria INSERT INTO tb_cliente (id, nome, email) VALUES (1, 'Fulano', null);.
Alternativa B — ✅ Correta ⟵ GABARITO
A alternativa B apresenta a sintaxe correta: INSERT INTO tb_cliente (nome, email) VALUES ('Fulano', '[email protected]');. Ela usa INSERT INTO, especifica as colunas nome e email entre parênteses, e fornece os valores correspondentes na cláusula VALUES, com strings entre aspas simples. Este comando insere um novo registro na tabela tb_cliente com o nome 'Fulano' e o email '[email protected]'.
Alternativa C — ❌ Incorreta
A alternativa C usa INSERT IN em vez de INSERT INTO. A palavra IN não é válida nesse contexto; o correto é INTO. Além disso, a sintaxe INSERT IN tb_cliente (1, Fulano, [email protected]); está incorreta porque falta a cláusula VALUES e os valores não estão entre aspas simples para strings. O comando correto seria INSERT INTO tb_cliente (id, nome, email) VALUES (1, 'Fulano', '[email protected]');.
Alternativa D — ❌ Incorreta
A alternativa D usa INFO em vez de INTO e também omite a cláusula VALUES. A sintaxe INSERT INTO tb_cliente (id, nome) INFO (1, Fulano); está incorreta porque INFO não é uma palavra válida e falta VALUES. Além disso, o valor 'Fulano' não está entre aspas simples. O comando correto seria INSERT INTO tb_cliente (id, nome) VALUES (1, 'Fulano');.
Alternativa E — ❌ Incorreta
A alternativa E omite a cláusula VALUES e a palavra INTO. A sintaxe INSERT tb_cliente VALUES (1, 'Fulano', null); está incorreta porque falta INTO após INSERT. O correto seria INSERT INTO tb_cliente VALUES (1, 'Fulano', null);. Embora a lista de colunas seja opcional, a cláusula VALUES é obrigatória e a palavra INTO é parte essencial do comando.