Resumo : neste tutorial você aprenderá como inserir uma ou mais linhas em uma tabela usando PHP PDO.
As etapas para inserir uma linha em uma tabela
Para inserir uma linha em uma tabela, siga estas etapas:
- Primeiro, conecte-se ao banco de dados criando um novo
PDO
objeto. - Em segundo lugar, construa a
INSERT
declaração. Se precisar passar um valor para aINSERT
instrução, você pode usar os placeholders no formato:parameter
. Mais tarde, você pode substituir oparameter
pelo seu valor. - Terceiro, crie uma instrução preparada chamando o
prepare()
método do objeto PDO. Oprepare()
método retorna uma instância daPDOStatement
classe. - Por fim, chame o
execute()
método da instrução preparada e passe os valores.
Inserindo uma linha em uma tabela exemplo
O exemplo a seguir mostra como inserir uma nova linha na publishers
tabela:
<?php
$pdo = require_once 'connect.php';
// insert a single publisher
$name = 'Macmillan';
$sql = 'INSERT INTO publishers(name) VALUES(:name)';
$statement = $pdo->prepare($sql);
$statement->execute([
':name' => $name
]);
$publisher_id = $pdo->lastInsertId();
echo 'The publisher id ' . $publisher_id . ' was inserted';
Linguagem de código: HTML, XML ( xml )
Como funciona.
- Primeiro, use o
connect.php
para se conectar aobookldb
banco de dados. - A seguir, construa uma
INSERT
instrução SQL. O:name
é o espaço reservado que será substituído pelo nome do editor. - Em seguida, prepare a
INSERT
instrução para execução chamando oprepare()
método da$pdo
instância. O método prepare() retorna uma instância daPDOStatement
classe. - Depois disso, execute a instrução preparada passando os valores para o
execute()
método. - Por fim, obtenha o id inserido chamando o
lastInsertId()
método do objeto PDO.
Observe que este tutorial usa o connect.php
script desenvolvido no tutorial de conexão com o banco de dados .
Exemplo de inserção de múltiplas linhas em uma tabela
Para inserir várias linhas em uma tabela, você precisa chamar execute()
o método várias vezes. O método insere uma nova linha na tabela em cada chamada. Por exemplo:
<?php
$pdo = require_once 'connect.php';
$names = [
'Penguin/Random House',
'Hachette Book Group',
'Harper Collins',
'Simon and Schuster'
];
$sql = 'INSERT INTO publishers(name) VALUES(:name)';
$statement = $pdo->prepare($sql);
foreach ($names as $name) {
$statement->execute([
':name' => $name
]);
}
Linguagem de código: HTML, XML ( xml )
Neste exemplo, temos uma lista de editores armazenados no $names
array.
Para inserir esses editores na publishers
tabela, iteramos sobre os elementos do $names
array usando foreach
e inserimos cada elemento na tabela.
Resumo
- Use uma instrução preparada para inserir uma ou mais linhas em uma tabela.
Anterior