Banco de dados C/C++ Delphi Lazarus Mysql PHP Python R
Mysql com C/Lazarus/Python/PHP/R – Parte 1

Neste super tutorial, iremos abordar a Conexão do Mysql com estas 5 linguagens.

Na primeira parte do tutorial, iremos abordado o Mysql própriamente dita, onde faço a instalação e configuração.

Nos próximos posts abordarei cada linguagem individualmente.

Mysql

Mysql é um banco fornecido pela Oracle, muito utilizado em aplicações embarcadas e web.

De forma geral é um banco sólido, com uma ampla gama de aplicações, e seguro.

Instalação no Linux / Ubuntu

A instalação do servidor mysql é muito simples.

apt install mysql-server

Instalação do mysql server em Linux

A instalação do Mysql é muito simples, e instala os principais componentes.

Instalação do Mysql

Vídeo de demonstração

Instalação do Mysql

Criando um banco de dados

Agora, iremos criar um projeto de banco de dados bem simples.

A idéia é basicamente permitir CRUD nos demais artigos. Para quem não conhece o CRUD, é a abreviação (Create, Read, Update, Delete).

Para nos ajudar, irei criar um git, do projeto.

Ambiente de desenvolvimento

A instalação do ambiente de desenvolvimento precisa ser feito através da lib:

 apt-get install libmysqlclient-dev 

A lib acima, instala os headers e .so para integração com C e outras linguagens, como Lazarus.

A medida que avancemos nos demais artigos, irei incluindo aqui, as bibliotecas para as demais linguagens tambem. Então fique atento.

GIT

https://github.com/marcelomaurin/mysql-vs-todos

SCRIPTS

Agora iremos criar o Nosso Makefile para carregar os scripts:

Arquivo Makefile

# Script de criacao do banco de dados
# Autor Marcelo Maurin Martins
# Daa: 31/01/2022
#


APP=mysql

all:  database Tabelas
database:
	$(APP)  < database.sql
Tabelas:
	$(APP) < pessoas.sql

Em seguida iremos criar o script de criação da base de dados, database.sql:

#Cria um banco de dados em Mysql
#Autor: Marcelo Maurin Martins
#31/01/2022


create database IF NOT EXISTS `testedb`;

E por fim nossa tabela pessoas.sql

#Cria a tabela de pessoas
#Autor: Marcelo Maurin Martins
#31/01/2022

use testedb;

create table if not exists pessoas
(
   idPessoa INT(6) unsigned auto_increment primary key,
   nome varchar(30) not null,
   dtnasc date,
   profissao varchar(20),
   sexo char(1),
   dtchg timestamp default current_timestamp on update current_timestamp,
   dtcad timestamp default current_timestamp
);

Executando Scripts

Entre na pasta scripts, para que possamos criar nossas estruturas de banco.

Digite o comando:

make

executa a criação do banco

A figura abaixo mostra sua execução

Exemplo do script do banco de dados

Por fim mais um vídeozinho

Procedimento de instalação dos scripts

Permissões

Ao montar o segundo artigo lembrei que para melhorar este artigo, o ideal seria criar uma conta especifica para cada aplicação. Desta forma criei um scripts novo chamado GRANTS.SQL

Desta forma, existe essa ultima etapa. Que precisamos, que será criar um usuário para acesso a aplicação:

Criando o usuario:

CREATE USER 'seu_usuario'@'localhost' IDENTIFIED BY 'suasenha';

Dando permissão:

GRANT ALL PRIVILEGES ON * . * TO 'seu_usuario'@'localhost';

Finalizando

FLUSH PRIVILEGES;

Este procedimento será validado, quando digitarmos

mysql -h localhost -u gcc -p

Conectando em banco de dados

Pois se as permissões não estiverem corretas o usuario não conecta.

Sempre que avançarmos em uma etapa, um novo usuário será criado, neste script.

Então não estranhem se eventualmente os scripts sofrerem modificação no git.

Cenas do próximos capítulos

Agora que preparamos a cama, iremos começar a codificar nela. No próximo artigo iremos criar um crud em C para cadastrar pessoas.

Até a próxima.

Referências

https://stackoverflow.com/questions/838978/how-to-check-if-mysql-database-exists

https://stackoverflow.com/questions/11739014/how-to-generate-a-create-table-script-for-an-existing-table-in-phpmyadmin

https://stackoverflow.com/questions/6239131/how-to-grant-remote-access-permissions-to-mysql-server-for-user

https://linuxize.com/post/how-to-create-mysql-user-accounts-and-grant-privileges/

Artigos Relacionados

    R
    Instalando R no raspberry PI

    Ensinarei nesse tutorial o procedimento de instalação do R para Raspberry PI.

    O R, é uma linguagem de programação estatística, orientada a objeto. Sendo uma linguagem aberta (Open Source) permite a criação de gráficos e analise de dados.

    Estarei apresentando o processo de instalação no Raspberry PI e tambem em outras distribuições linux.

    Instalação Tradicional

    Para instalar o R é bastante simples:

    Entre em uma máquina raspberry pi, usando um terminal.

    sudo apt-get install r-base r-base-core r-base-dev

    Para mostrar que funciona em outras distros realizei também a instalação no ubuntu 21, conforme segue:

    Instalação em ubuntu 21, em uma VM

    Agora iremos verificar se o mesmo esta rodando, primeiro buscaremos na lista de nossos aplicativos.

    R instalado com sucesso

    Pronto, o R esta rodando no terminal conforme apresentado na figura abaixo:

    Interface console do R

    Instalação dos fontes

    A instalação do R baseado nos fonte é necessário primeiramente baixar os mesmos.

    GIT

    O git do repositório fica neste link.

    https://github.com/rstudio/rstudio

    Iremos instalar em meu servidor raspberry.

    Para tanto irei baixar ele através do comando:

    git clone https://github.com/rstudio/rstudio

    baixa dos fontes

    Entre na pasta do projeto rstudio, que foi criado.

    Em seguida crie a pasta build

    mkdir build

    cd build

    Agora será necessário, preparar a compilação

    cmake .. -DRSTUDIO_TARGET=Server -DCMAKE_BUILD_TYPE=Release

    cmake .. -DRSTUDIO_TARGET=Desktop -DRSTUDIO_PACKAGE_BUILD=1

    Depois, basta dar

    make install

    Neovim

    Permite editar o R

    apt install neovim

    R
    Exemplo de código em R

    Segue um exemplo bem simples em R,

    Criado para avaliar as notas , calculando média.

    Fonte:

    ##Criado por Marcelo Maurin Martins
    ##Aplicação de Média
    ##19/02/2018
    ##Treinamento de Linguagem R

    #Criar um algoritmo em R que faça:
    #1 – Cadastro de alunos (nome, e-mail, etc…, notas de provas)
    #2 – Mostra os dados dos alunos cadastrados informando também os aprovados e reprovados.

    Nomes=c(“Marcelo”,”Fernanda”,”Camille”,”Roberta”,”Marcella”)
    Nomes=as.character(Nomes)
    Email=c(“marcelomaurinmartins@gmail.com”,”teste1@”,”teste2@”,”teste3@”,”teste4@”)
    Email=as.character(Email)
    Nota1=c(9,1.4,9,3,9)
    Nota1=as.numeric(Nota1)
    Nota2=c(9,2.4,9,2,8)
    Nota2=as.numeric(Nota2)
    Nota3=c(9,1.4,9,3,7)
    Nota3=as.numeric(Nota3)
    Nota4=c(9,3.4,9,4,6)
    Nota4=as.numeric(Nota4)
    Media=c(0,0,0,0,0)
    Media=as.numeric(Media)

    #Monta o data frame
    Notas=data.frame(Nomes,Email,Nota1,Nota2,Nota3,Nota4,Media)

    #Calcula a media
    for(i in 1:length(Nomes))
    {
    print(Notas[i,1])
    Notas[i,7]=(Notas[i,3]+Notas[i,4]+Notas[i,5]+Notas[i,6])/4
    if(Notas[i,7]>=7)
    {
    print(“Aprovado”)
    }
    else
    {
    print(“Reprovado”)
    }
    }

    Resultado do Data.frame

    Notas
    Nomes Email
    1 Marcelo marcelomaurinmartins@gmail.com
    2 Fernanda teste1@
    3 Camille teste2@
    4 Roberta teste3@
    5 Marcella teste4@
    Nota1 Nota2 Nota3 Nota4 Media
    1 9.0 9.0 9.0 9.0 9.00
    2 1.4 2.4 1.4 3.4 2.15
    3 9.0 9.0 9.0 9.0 9.00
    4 3.0 2.0 3.0 4.0 3.00
    5 9.0 8.0 7.0 6.0 7.50

    Output de dados

    [1] Marcelo
    [1] “Aprovado”
    [1] Fernanda
    [1] “Reprovado”
    [1] Camille
    [1] “Aprovado”
    [1] Roberta
    [1] “Reprovado”
    [1] Marcella
    [1] “Aprovado”

    Programação R
    Instalando Mysql Conection em RStudio

    O Procedimento a seguir foi extraído do seguinte artigo com variances:

    http://db.rstudio.com/databases/my-sql/

    Em Tools > Install Packages instale os seguintes pacotes:

    • RMySQL
    • devtools
    • dbConnect

    Instale o ODBC e a lib do Mysql

    Restart RStudio

    Segue exemplo de conexão com Mysql ankara escort çankaya escort ankara escort çankaya escort escort ankara çankaya escort escort bayan çankaya istanbul rus escort eryaman escort escort bayan ankara ankara escort kızılay escort istanbul escort ankara escort ankara rus escort escort çankaya ankara escort bayan istanbul rus Escort atasehir Escort beylikduzu Escort Ankara Escort malatya Escort kuşadası Escort gaziantep Escort izmir Escort

    #install.packages(“dbConnect”,type=”source”)
    library(RMySQL)
    library(dbConnect)

    con = dbConnect(MySQL(), user='<user>’, password='<password>’, dbname=’SMSdb’, host=’192.168.1.211′)

    dbListTables(con)

    #Create table in R from Mysql table
    myQuery = “select * from jobs”

    str(df)

    telefone= “16981434112”

    my_d_query=paste(“select * from jobs where telefone = ‘”,telefone,”‘ “)
    out_df= dbGetQuery(con,my_d_query)

    dbWriteTable(con,”out_df”,out_df, overwrite=TRUE, append=FALSE)
    dbDisconnect(con)

    maurinsoft.com.br