Palavra-chave MySQL VALUES
A palavra-chave `VALUES` no MySQL é usada para especificar os dados a serem inseridos em uma tabela durante uma operação `INSERT`. Ele define os valores literais a serem inseridos para cada coluna da tabela.
Uso
A palavra-chave `VALUES` é usada em conjunto com `INSERT INTO` para adicionar novas linhas de dados a uma tabela. Ela é seguida por uma lista de valores que correspondem às colunas especificadas na cláusula `INSERT INTO`.
sql
INSERT INTO table_name (column1, column2, ...)
VALUES (value1, value2, ...);
Nessa sintaxe, `VALUES (value1, value2, ...)` especifica os dados a serem inseridos nas respectivas colunas da tabela. O `VALUES` só pode ser usado com operações `INSERT` e não com `UPDATE` ou outras operações.
Exemplos
1. Inserção básica
sql
INSERT INTO students (name, age)
VALUES ('John Doe', 21);
Este exemplo insere uma nova linha na tabela `students` com `name` definido como 'John Doe' e `age` definido como 21.
2. Inserção de várias linhas
sql
INSERT INTO products (product_name, price)
VALUES ('Laptop', 899.99), ('Smartphone', 599.99);
Aqui, duas novas linhas são adicionadas à tabela `products`, cada uma com valores especificados para `product_name` e `price`.
3. Inserir com SELECT
sql
INSERT INTO archive_table (column1, column2)
SELECT column1, column2
FROM main_table
WHERE condition;
Os dados são inseridos na `archive_table` com base em uma instrução `SELECT`, permitindo a transferência de dados em massa sob condições específicas. Ao contrário do `INSERT ... VALUES`, essa operação não usa a palavra-chave `VALUES`.
Dicas e práticas recomendadas
- Certifique-se de que a ordem dos valores corresponda às colunas. Os valores devem estar alinhados com a ordem das colunas especificadas na instrução `INSERT INTO`.
- Use aspas simples para cadeias de caracteres. Coloque literais de cadeia de caracteres entre aspas simples para evitar erros de sintaxe.
- Validar tipos de dados. Certifique-se de que os valores correspondam aos tipos de dados esperados pelas colunas da tabela.
- Considere usar `INSERT IGNORE` ou `REPLACE`. Eles podem lidar com duplicatas ou conflitos com base em chaves primárias ou índices exclusivos.
- Proteja suas entradas. Use consultas parametrizadas ou instruções preparadas para evitar ataques de injeção de SQL.
- Lidar com erros e exceções. Esteja ciente de possíveis erros, como chave duplicada ou violações de restrição de chave estrangeira.