Inserir Dados nas tabelas no MySQL – comando INSERT INTO
Uma das operações mais importantes em um banco de dados é a inserção de registros (dados). Fazemos isso com o uso do comando INSERT INTO.
Sintaxe padrão:
INSERT INTO nome_tabela (coluna1, coluna2,...)
VALUES (valor1, valor2,...);
De acordo com a sintaxe apresentada, devemos especificar a tabela e quais colunas dessa tabela receberão os dados, e em seguida, logo após a palavra-chave VALUES, especificamos os dados em si – na mesma ordem em que as colunas foram especificadas.
Caso haja uma coluna com auto incremento, ela não deve ser incluída na lista de colunas do comando, pois seus dados serão gerados e inseridos automaticamente pelo MySQL quando um novo registro for adicionado.
Exemplos no banco de dados db_biblioteca:
Vamos inserir dados de quatro editoras na tabela tbl_editoras:
INSERT INTO tbl_editoras (Nome_Editora) VALUES ('Prentice Hall'); INSERT INTO tbl_editoras (Nome_Editora) VALUES ('O´Reilly'); INSERT INTO tbl_editoras (Nome_Editora) VALUES ('Microsoft Press'); INSERT INTO tbl_editoras (Nome_Editora) VALUES ('Wiley'); INSERT INTO tbl_editoras (Nome_Editora) VALUES ('McGraw-Hill Education');
Agora, vamos inserir dados na tabela de autores. No exemplo anterior executamos o comando INSERT INTO quatro vezes. mas é possível executá-lo apenas uma vez e inserir múltiplos registros, como mostra o código abaixo, que irá inserir 12 autores de uma vez na tabela tbl_autores:
INSERT INTO tbl_autores VALUES (1, 'Daniel', 'Barret'), (2, 'Gerald', 'Carter'), (3, 'Mark', 'Sobell'), (4, 'William', 'Stanek'), (5, 'Richard', 'Blum'), (6, 'Jostein', 'Gaarder'), (7, 'Umberto', 'Eco'), (8, 'Neil', 'De Grasse Tyson'), (9, 'Stephen', 'Hawking'), (10, 'Stephen', 'Jay Gould'), (11, 'Charles', 'Darwin'), (12, 'Alan', 'Turing'), (13, 'Simon', 'Monk'), (14, 'Paul', 'Scherz');
Note que nesse caso, como inserimos dados em todas as colunas da tabela, e na mesma ordem em que elas foram criadas, não foi necessário especificar essas colunas no comando.
Vamos inserir dados na tabela de categorias:
INSERT INTO tbl_categorias VALUES (1, 'Tecnologia'), (2, 'História'), (3, 'Literatura'), (4, 'Astronomia'), (5, 'Botânica');
Agora, para finalizar, vamos inserir dados na tabela de livros (tbl_livro):
INSERT INTO tbl_Livro (Nome_Livro, ISBN13, ISBN10, Data_Pub, Preco_Livro, Categoria, ID_Autor, ID_Editora) VALUES ('Linux Command Line and Shell Scripting','9781118983843', '111898384X', '20150109', 68.35, 1, 5, 4), ('SSH, the Secure Shell','9780596008956', '0596008953', '20050517', 58.30, 1, 1, 2), ('Using Samba','9780596002565', '0596002564', '20031221', 61.45, 1, 2, 2), ('Fedora and Red Hat Linux', '9780133477436', '0133477436', '20140110', 62.24, 1, 3, 1), ('Windows Server 2012 Inside Out','9780735666313', '0735666318', '20130125', 66.80, 1, 4, 3), ('Microsoft Exchange Server 2010','9780735640610', '0735640610', '20101201', 45.30, 1, 4, 3), ('Practical Electronics for Inventors', '9781259587542', '1259587541', '20160324', 67.80, 1, 13, 5);
Neste último exemplo, uma das colunas não recebeu dados inseridos pelo comando (ID_livro é auto-incrementado), então especificamos as colunas que receberiam dados.
Testando a inserção de dados
Agora vamos executar os comandos abaixo (consultas simples com SELECT) para verificar se os registros foram inseridos corretamente em cada tabela no MySQL:
SELECT * FROM tbl_autores; SELECT * FROM tbl_editoras; SELECT * FROM tbl_livro;
Veja o resultado da inserção de dados na tabela de livros, verificado com o comando executado acima:
Assista a um vídeo explicativo sobre a inserção de registros no MySQL: