Tutorial

Inserindo dados – MySQL – Linguagem C


Esse tutorial funciona em vários IDEs, mas só posso garantir total funcionalidade no CodeBlocks, pois é a continuação do tutorial que vimos anteriormente: Instalando a biblioteca MySQL no CodeBlocks.

Meu banco de dados tem uma tabela com o nome PESSOA e que essa tabela tem duas colunas nome e sexo. 

Para inserir os dados (nome e sexo) de uma pessoa usaremos a função mysql_query(&conexao, “insert into PESSOA(nome, sexo) values(‘inserir aqui o nome‘, ‘inserir aqui o sexo‘);
da Header mysql.h.
É bom que você tenha algum conhecimento sobre banco de dados, pois facilitará bastante.

Bom, vamos ao que interessa, minha tabela está criada (imagem abaixo).

Download Mysql P1

1º Passo: Abra o CodeBlocks e clique em File->New->Empty file, ou shift+alt+N.
– Salve o arquivo com a extensão .c (imagens abaixo).

Download Mysql P2
Download Mysql P32º Passo: Insira as bibliotecas:
– stdio.h
– windows.h
– mysql.h
– winsock2.h
-string.h

*Ficará assim:
#include <stdio.h>
#include<windows.h>
#include <mysql.h>
#include <winsock2.h>
#include<string.h>

– Agora, vamos usar #define para salvar as informações de acesso ao banco de dados.
#define servidor “Nome do seu servidor”
#define usuario “Usuário”
#define senha “Senha”
#define bd”Banco de dados”
OBS->NÃO PRECISA COPIAR, POIS O CÓDIGO INTEIRO ESTÁ DISPONÍVEL LOGO ABAIXO!

3º Passo:
 Abra o código abaixo e cole em seu CodeBlocks.
– Clique em + expand source

[code lang=”C”] #include <stdio.h>
#include <mysql.h>
#include <winsock2.h>
#include<string.h>
#define servidor "Nome do seu servidor"
#define usuario "Usuário"
#define senha "Senha"
#define bd "Banco de dados"

main()
{
MYSQL conexao;
mysql_init(&conexao);
if (mysql_real_connect(&conexao, servidor, usuario, senha, bd,0,NULL,0))
{
printf("Conectado com sucesso!n");
mysql_query(&conexao,"INSERT INTO PESSOA(nome, sexo) values(‘Isaac Fernando’, ‘M’);");
mysql_close(&conexao);
}
else
{
printf("Falha de conexaon");
printf("Erro %d : %sn", mysql_errno(&conexao), mysql_error(&conexao));
}
}
[/code]

 4º Passo: Preencha adequadamente com as informações do seu banco de dados e insira as informações.
– Veja que há ninguém cadastrado no meu banco de dados.
Download Mysql P4

– Agora, vou compilar esse código e inserir esses dados na minha tabela.
Download Mysql P5i

– Vamos olhar lá no meu banco se essas informações foram salvas corretamente.
Download Mysql P6– Para mostrar a funcionalidade do algoritmo vou escrever o nome do servidor erradamente só para  mostrar o erro(Deixei o nome do meu servidor como:” Nome do seu servidor”).
Download Mysql P7
Tudo que a gente fez até agora foi inserir os dados na tabela sem verificar se os mesmos foram inseridos corretamente ou não. Agora vamos ver como se verifica a inserção dos dados, só precisamos pegar o valor de retorno de uma  variável da função mysql_query e testar o seu valor, se o valor retornado for zero será porque os dados foram inseridos corretamente, mas se for diferente de zero é porque há erros na função mysql_query.
– O código abaixo
– Clique em + expand source

[code lang=”C”] #include <stdio.h>
#include <mysql.h>
#include <winsock2.h>
#include<string.h>
#define servidor "Nome do seu servidor"
#define usuario "Usuário"
#define senha "Senha"
#define bd "Banco de dados"

main()
{
MYSQL conexao;
int res;
mysql_init(&conexao);
if(mysql_real_connect(&conexao, servidor, usuario, senha, bd,0,NULL,0))
{
printf("Conectado com sucesso!n");
res = mysql_query(&conexao,"INSERT INTO PESSOA(nome, sexo) values(‘Isaac Fernando’,’M’);");

if (!res)
{
printf("Registros inseridos %dn", mysql_affected_rows(&conexao));
}

else
{
printf("Erro na insercao %d : %sn", mysql_errno(&conexao), mysql_error(&conexao));
mysql_close(&conexao);
}
}
else
{
printf("Falha de conexaon");
printf("Erro %d : %sn", mysql_errno(&conexao), mysql_error(&conexao));
}
}
[/code]

Na próxima postagem veremos como consultar os elementos do seu BD MySQL usando C.

OBS-> Se forem copiar o tutorial para reprodução, por favor, incluam os créditos!

Isaac Fernando
Sou Isaac Fernando, Bacharelando em Ciência da Computação pela UFAL (Universidade Federal de Alagoas) e Técnico em informática. Meu lema é: Nunca desista dos seus sonhos, por mais difíceis que sejam! ->www.cienciacomputacao.com.br<-

Leave a reply

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

0 %