Mostrando postagens com marcador Linguagem Mysql. Mostrar todas as postagens
Mostrando postagens com marcador Linguagem Mysql. Mostrar todas as postagens

quarta-feira, abril 25, 2012

Criando um banco de dados MySql Server

      Este vídeo mostra como criar um banco de dados. Usei as ferramentas MySql Server e Query Browser, usarei este banco de dados em outro post, onde estarei desenvolvendo  um formulário em C#, lembrando que já tenho a definição de dados pronto. Então sem mais delongas, vamos chega o bette.





      Lembrando que usarei um formulário em C# para conectar com esta base de dados, então não deixem de visitar o blog.

sexta-feira, março 09, 2012

Conectando Aplicação em C#, ASP, Com o Banco de Dados MySql


Neste Post irei mostra como fazer a ligação da sua aplicação em C#, ASP.NET com o banco de dados MySql, estou partindo do pressuposto que você já tenha as ferramentas que iremos utilizar, serão elas Mysql, Visual Studio 2010 e o MySql Connector Net 6.5.4, caso a sua versão do MySql não venha com o conector, se não me engano  a partir da versão 5.1 já vem com o Connector Net. 

Primeiro passo peça para sua mãe, namorada, enrolada ou até mesmo seu cachorro preparar uma garrafa de café, garanto vai precisar  disto, sem mais brincadeiras vamos ao que interessa.

A primeira parte será a criação da database e a tabela no MySql, onde nossas informações ficarão armazenadas, eu coloquei o nome da Database de CadastroCliente e da tabela de Cliente, com os seguintes atributos.

Criação da Database

Create database CadastroCliente;

Criação da Tabela


create table cliente (
id int not null auto_increment primary key,
nome varchar (50) not null,
endereco varchar (100) default null,
cidade varchar (50) not null,
estado char (2) not null,
rg varchar (20) not null,
cpf varchar (20) not null);


Agora que já temos nossa base de dados criada, vamos para a criação do nosso formulário em ASP no Visual Studio, abra o visual Studio e clique em New Project, Veja a figura 1.0.


Figura 1.0


 

Após isto irar abrir uma nova janela, nesta janela utilizaremos as seguintes opções, Visual C#, após isto clique Web, depois selecione a seguinte opção ASP.NET Empty Web Application, na parte de baixo temos as seguintes opções, Name, Location, Solution e Solution Name, sendo elas, Name o nome da aplicação eu coloquei o nome de CadastroCliente, Location  o local onde você irá salvar sua aplicação, solution que dizer deixe onde esta e não mecha e Solution name preenchera automática quando você por o nome da aplicação, estes informações deixo ou seu critério, veja a figura 1.2.


Figura 1.2




Agora iremos ao nome do nosso projeto clicar com o botão direito, corra o mouse até add e depois clique em New Item, veja a figura 1.3.


Figura 1.3




                Então irá abrir uma nova janela, nesta janela vamos selecionar as seguintes opções, Web e Web Form. vá à parte de baixo e de um nome para sua Web Form, no meu caso ficou Webform1 porque acabei esquecendo-me de por nome, não interfere muito no projeto, mas supondo que estejamos fazendo um projeto grande é recomendado que dê um nome para suas aplicações, fica mais fácil de achar caso precisemos fazer alguma alteração, veja a figura 1.4.


Figura 1.4





                Após isto abrirá uma nova janela com alguns códigos em HTML e ASP, nesta parte iremos trabalhar utilizado Design, se tiver alguém querendo trabalhar no modo macho pode continuar desenvolvendo no código mesmo, eu aconselho mudar de Source para Design, veja a figura 1.5

Figura 1.5



                Agora é só criar nosso formulário, eu não estarei dando muito detalhes sobre o design do nosso formulário, porque ficaria um pouco extenso o tutorial, lembrando que o objetivo aqui é fazer a conexão com o banco de dados, basicamente eu utilizei uma tabela de 20 linhas e duas colunas, algumas TexBox, uma DropDownList para o estado, um botão salvar, utilizaremos ele para salvar as informações digitadas no formulário no banco de dados, não importe muito como irá fica o Design a principio, nesta parte temos que esta ciente que ela esteja funcionando e com os mesmos campos da tabela cliente, onde iremos armazena as informações digitadas no nosso formulário, para saber se a nossa aplicação esta rodando basta aperta F5 , caso você olhe para o seu teclado e não veja essa tecla, olhe no chão, embaixo do sofá, ela tem que está ai, caso não esteja é melhor comprar um novo teclado, mas não se desespere, não pare a aplicação por isto, nem tudo esta perdido, basta ir na parte de cima perto da opção Debug,  clique na setinha verde que nossa aplicação irá rodar, veja se não deu nem um problema, veja como esta ficando o formulário na figura 1.6.


 Figura 1.6





Caso você tenha executado a aplicação e não estiver dado nem um erro, ira abrir seu navegador padrão com a nossa aplicação, eu dei mais um incrementada no formulário, mas só na parte de design mesmo, não mudou nem um atributo importante, como disse você pode se preocupar com isto depois da sua aplicação esta rodando, sem nem um erro e conectada ao banco de dados, afinal é o que importa aqui, veja nossa aplicação rodando na figura 1.7.


Figura 1.7




 

Parte Dois, Conectando ao Banco de Dados


Finalmente a Conexão com o banco de dados Mysql, vamos para Solution Explorer onde está a raiz principal do nosso projeto, então clique com o botão direito no projeto, no caso aqui SistemadeCadastro, direcionar o mouse até a opção Add Reference e clique, veja a figura 1.7.



Figura 1.7

 
 

Agora é só seguir as figuras abaixo para Add as DLL que vai fazer a conexão do banco de dados com nossa aplicação, aparecera uma nova janela nele vá até Browse e navegue até a pasta do MySql, se você estalou o MySql na pasta  padrão é só ir a disco C:  Arquivo de Programa procura a pasta MySql, abra a pasta, então terá uma pasta chamada MySQL Connector Net 6.5.4, isso se você estalou o MySql Connector, então clique na pasta Assemblies  depois na pasta  V4.0 selecione as três DLL desta pasta e clique em OK, só aguarda carrega as DLL, em alguns casos é preciso reiniciar o Visual Studio para que as referencias apareçam, vejam as figuras abaixo. Figura 1.8, 1.9,2.0  e 2.1.


Figura 1.8




Figura 1.9





Figura 2.0


 

Figura 2.1




Agora que já temos nossas DLL para fazer referência com o banco de dados, basta clicar no botão salvar do formulário e aperta Enter, irá aparecer o seguinte código. Veja Figura 2.3.


Figura 2.3




Após isto basta por o código abaixo. Lembrando que esse código vai salvar as informações só se o banco de dados estiver estruturado com os mesmos atributos do começo do tutorial, mas é só seguir a lógica que da para fazer para qualquer aplicação Web Form, você vai ter apenas que alterar alguns nomes. A linha. string conexao = "Server=localhost; UserId=root; Password=123; Database=cadastrocliente;";, é uma string criada para fazer a conexão com o MySql, no caso se seu projeto for diferente vai ter que alterar as informação para fazer a conexão com o banco, UserId=root; é o nome do usuário no meu caso o root, Password você irar por a senha que você cadastrou na instalação do MySql,  Database é o banco de dados, no meu caso CadastroCliente, mas se no seu projeto estiver diferente altere para os nomes que você usou, outra linha super importante é as que referencia as DLL, using MySql.Data.MySqlClient;. Alterando essas informações e os campos que você usou para construir suas tabelas você conseguira fazer a ligação de qualquer formulário com seu banco de dados, dês de que os mesmo estejam com as mesmas estruturas, vamos ao código.


Código usado para salvar as informações digitadas no formulário no banco de dados.



using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MySql.Data.MySqlClient;

namespace SistemaDeCadastro
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Salvar_Click(object sender, EventArgs e)
        {
            MySqlConnection conn;
            string conexao = "Server=localhost; UserId=root; Password=123; Database=cadastrocliente;";
            conn = new MySqlConnection(conexao);
            string comando = "insert into cliente (nome,endereco,cidade,estado,rg,cpf) ";
            comando += "values ('" + nome.Text + "','" + endereco.Text + "','";
            comando += cidade.Text + "','" + estado.Text;
            comando += "','" + rg.Text + "','" + cpf.Text + "')";
            MySqlCommand cmd = new MySqlCommand(comando);
            cmd.Connection = conn;
            conn.Open();
            Console.WriteLine(comando);
            cmd.ExecuteNonQuery();
            conn.Close();
            nome.Text = "";
            endereco.Text = "";
            cidade.Text = "";
            estado.Text = "";
            rg.Text = "";
            cpf.Text = "";
        }
    }
}

 

Veja a figura 2.4 de como o código fica estruturado.

Figura 2.4 



Agora basta salvar nosso código e roda a aplicação, para roda a aplicação aperta F5, preencha o formulário e aperte o botão salvar, se as informações sumirão opa isso é um bom sinal, agora se não sumiu, sugiro fazer outra garrafa de café, repassar o tutorial com cuidado e ver se não esqueceu algo, bom então é isso amigos, vou posta mais algumas imagens para vocês verem as informações salva no banco de dados, abraços e até o próximo, há só lembrando se curtiu aperta no +1 ai, e divulgue para os amigos, sogro, sogra, cunhado até para os inimigos se quiser, faz nosso trabalho valer apena,  abraços até o próximo Post.


Figura 2.5




 Figura 2.6




Figura 2.7











quarta-feira, fevereiro 29, 2012

Criando tabelas com relacionamentos, MySQL

================================================================
Criando um Banco de Dados
================================================================
     Imagine que você precise criar um banco de dados para um banco qualquer, todos as tabelas devem se relacionar para facilitar na hora de fazer a pesquisa, ou seja, à hora de pesquisar informações sobre o cliente, o endereço dele, o saldo em determinada data, não vou está postando os select para fazer a pesquisa neste post, mas assim que sobra um tempinho vou fazer outro post para criação do select para este banco de dados, espero que gostem, e se gostarem da um +1 ai. A lembrando guardem o código para usarmos o select.


     Estou criando usando o Query Browser, e para executar os comandos bastas selecionar a linha e aperta Ctrl + Enter. Quando digo selecionar a linha é só clica em qualquer parte do código que você quer executar, qualquer lugar entre "create" e o ";" ponto e virgula, ele serve para finalizar o código.

================================================================
Criando a Database para o banco de dados

create database Banco_Dionatan;

     Selecionando a database para não precisar ficar digitando o nome em cada tabela, facilita bastante na criação das tabelas.

use Banco_Dionatan;

================================================================
     Criando a tabela estado, começamos por ela porque não tem uma chave estrangeira, sempre devemos começa a criar as nossas tabelas por uma que não tenha uma chave estrangeira, mas porque isto? Simples como você irá relacionar uma coisa com outra que não existe? Vejamos o seguinte a tabela estado não relaciona com nem uma, mas a tabela cidade relaciona com o ID da tabela estado, então se cria-se a tabela cidade primeiro daria erro, isto porque a tabela estado ainda não existe, então o campo id da tabela estado também não. Acho que agora deu para entender né? Se ainda tiver alguma dúvida, deixe um comentário que vou tentar explicar melhor.

create table estado (
id int not null auto_increment primary key,
nome varchar (50) not null,
sigla char (2) not null);

================================================================
     Criando a tabela cidade, a tabela cidade relaciona com a tabela estado, ou seja, na tabela cidade o campo idestado relaciona com o campo da tabela estado id.

create table cidade (
id int not null auto_increment primary key,
nome varchar (50) not null,
idestado int not null,
foreign key (idestado) references estado (id));

================================================================
     Criando a tabela endereco, a tabela endereco se relaciona com a tabela cidade pelo campo idcidade na tabela endereco,ou seja, idcidade é igual ao id da tabela cidade.

create table endereco (
id int not null auto_increment primary key,
logradouro varchar (100) default null,
cep char (8) not null,
idcidade int not null,
foreign key (idcidade) references cidade (id));

================================================================
     Criando a tabela cliente, a tabela cliente relaciona com a tabela endereco, onde o campo da tabela cliente id endereco se realaciona com o campo da tabela endereco no id.

create trable cliente (
id int not null auto_increment primary key,
nome varchar (50) not null,
cpf varchar(8) not null,
idendereco int not null,
logradouro varchar (100) default null,
telefone1 varchar (14) default null,
telefone2 varchar (14) default null,
Email varchar (100) default null,
foreign key (idendereco) references endereco (id));

================================================================
     Criando a tabela conta, a tabela conta se relaciona com a tabela cliente atravéz do campo na tabela conta idcliente, este campo liga no id do cliente.

create table conta (
id int not null auto_increment primary key,
banco varchar (50) not null,
idcliente int not null,
agencia varchar (100) not null,
conta varchar (15) not null,
foreign key (idcliente) references cliente (id));

================================================================
     Criando a tabela operações, a tabela operações relaciona com a tabela conta através da chave estrageira idconta, que se liga no campo id da tabela conta.

create table operecoes (
id int not null auto_increment primary key,
idconta int not null,
saldo float (11,2) default null,
retirada float (11,2) default null,
foreign key (idconta) references conta (id));

================================================================
     Devem ser criados as tabelas na mesma ordem por questões de relacionamento, com essa estrutura será capaz de pesquisar qualquer informação que deseja, porque todos os campos tem ligação um com o outro, então basta criar seus select personalizado.

     Não altere o código imagiando que digitei errado. Exemplo: endereco ao invés de endereço, isto porque quando se estar digitando o código a algumas regar, entre elas é jamais usar o "~" ão,  fazer isto é um crime, regra básica de qualquer linguagem de programação, você terá uma ideia melhor no menu Logica da Programação, tem um post falando sobre criação de nomes para as variáveis. Então é isto vou ficando por aqui não consigo mais nem enxerga o teclando direito, abraços e boa noite. 

sexta-feira, fevereiro 17, 2012

Definições Gerais Banco de Dados

      Entidade ou tabela: Local, espaço, reservado dentro do banco de dados, que armazenará as informações de todos os indivíduos, separadas por delimitadores.

  Registro ou tupla: É um conjunto de dados de um determinado individuo. Uma ficha cadastral com informações individuais.

    Campo ou atributo: É o local onde os dados, informações específica fica armazenada. O tipo da informação define o tipo do atributo. os atributos podem ser de vários tipos, com opor exemplo: numéricos, alfabéticos, texto, data, hora, etc. Exemplo de campo: Nome do cliente, quantidade em estoque de um produto, data de vencimento de um medicamento.

    Chave primária: É a forma de identificar unicamente um registro dentro da entidade. as chaves primárias são definidas segundo critérios, realmente, estabelecidos no levantamento das informações: Ex: CPF da pessoa, código de barras etc.

   Chave segundaria: Também utilizada para localizar um determinado registro ou grupo de registro em uma entidade. Geralmente este tipo de chave está associada à uma condição de relacionamento externo com outras entidades, normalmente definidas com chave estrangeiras.

    Chave estrangeira: É a chave de relacionamento do registro com outra entidade. Aqui se estabelece o ponto de relação com as outras entidades do Banco de Dados.

quinta-feira, fevereiro 09, 2012

Criando Stored Procedure De Inserção De Dados Mysql

       Bem neste post vamos aprender a inserir dados nas tabelas, então vamos lá. O primeiro passo é abrir o Query Browser, lembrando que tem que esta com sua database selecionada, para isto, como já disso no outro post é só digitar o comando "use database;", onde database é o nome do seu banco, bom depois é só ir à barra de tarefas então escolher a opção "Sript", depois “Create Stored Procedure”, agora é só da um nome para a sua procedure irá abrir o seguinte código.


DELIMITER $$                 
DROP PROCEDURE IF EXISTS `teste01`.`stp_inserir_cliente` $$
CREATE PROCEDURE `teste01`.`stp_inserir_cliente` ()
BEGIN
END $$
DELIMITER ;

       Depois que estivermos com nosso ambiente de trabalho preparado vamos criara nossa procedure de inserção de dados, lembrando que vamos inserir dados nas tabelas do post "Criação de Tabelas Mysql", mas como já disse em outros posts basta seguir a lógica que irar conseguir inserir dados no seu BD, agora iremos fazer o seguinte, vamos começa a criar as procedure para as tabelas que não tenha chave estrangeira. Então vamos lá.


                       Inserir Dados Na Tabela Estado                                           

DELIMITER $$
DROP PROCEDURE IF EXISTS `teste01`.`stp_inserir_estado` $$
CREATE PROCEDURE `teste01`.`stp_inserir_estado` (
 p_nome varchar (50),
 p_sigla char (2))
BEGIN
 insert estado values (null,
                       p_nome,
                       p_sigla);
END $$
DELIMITER ;


                                      Inserir Dados Na Tabela Cidade                                

DELIMITER $$
DROP PROCEDURE IF EXISTS `teste01`.`stp_inserir_cidade` $$
CREATE PROCEDURE `teste01`.`stp_inserir_cidade` (
 p_nome varchar (50),
 p_idestado int)
BEGIN
insert cidade values (null,
                      p_nome,
                      p_idestado);
END $$
DELIMITER ;


                       Inserir Dados Na Tabela Endereço                                        

DELIMITER $$
DROP PROCEDURE IF EXISTS `teste01`.`stp_inserir_endereco` $$
CREATE PROCEDURE `teste01`.`stp_inserir_endereco` (
 p_setor varchar (50),
 p_idcidade int,
 p_logradouro varchar (50))
BEGIN
insert endereco values (null,
                        p_setor,
                        p_idcidade,
                        p_logradouro);
END $$
DELIMITER ;


                       Inserir Dados Na Tabela Cliente                                           

DELIMITER $$
DROP PROCEDURE IF EXISTS `teste01`.`stp_inserir_cliente` $$
CREATE PROCEDURE `teste01`.`stp_inserir_cliente` (
 p_nome varchar (45),
 p_cpf char (11),
 p_identidade varchar  (20),
 p_idendereco int,
 p_telefone1 char (12),
 p_telefone2 char (112),
 p_contato_email varchar (100),
 p_contato_msn varchar (100))
BEGIN
insert cliente values (null,
       p_nome,
       p_cpf,
       p_identidade,
       p_idendereco,
       p_telefone1,
       p_telefone2,
       p_contato_email,
       p_contato_msn);
END $$
DELIMITER ;

quarta-feira, fevereiro 08, 2012

Pesquisar Informações BD Mysql

Olá amigos, bom nesse post vamos aprender como fazer select, fazer pesquisar no banco de dados, vamos fazer um select para as tabelas do post "Criação de tabelas Mysql", mas é só seguir a lógica e você conseguira fazer para o seu banco de dados, então vamos ao que interessa.

Criando o select

Pesquisar Informações Sobre o Cliente

SELECT C.ID AS 'ID CLIENTE',
       C.NOME AS 'CLIENTE',
       C.CPF AS 'CPF',
       C.IDENTIDADE AS 'IDENTIDADE',
       E.LOGRADOURO AS 'LOGRADOURO',
       E.SETOR AS 'SETOR',
       CD.NOME AS 'CIDADE',
       ES.SIGLA AS 'UF',
       C.TELEFONE1 AS 'FONE 1',
       C.TELEFONE2 AS 'FONE 2',
       C.CONTATO_EMAIL AS 'E-MAIL',
       C.CONTATO_MSN AS 'MSN'
FROM CLIENTE C, ENDERECO E, CIDADE CD, ESTADO ES
WHERE C.IDENDERECO = E.ID AND
      E.IDCIDADE = CD.ID AND
      CD.IDESTADO = ES.ID
ORDER BY C.NOME;




Pesquisar Informações Sobre As Cidades

SELECT C.ID AS 'ID CIDADE',
       C.NOME AS 'CIDADE',
       E.SIGLA AS 'UF'
FROM CIDADE C, ESTADO E
WHERE C.IDESTADO = E.ID
ORDER BY C.NOME;



Pesquisar Informações Sobre Os Estados

SELECT E.ID AS 'ID ESTADO',
       E.NOME AS 'ESTADO',
       E.SIGLA AS 'UF'
FROM ESTADO E
ORDER BY E.NOME;



Pesquisar Informações Sobre Os Endereços

SELECT E.ID AS 'ID ENDERECO',
       E.SETOR AS 'SETOR',
       C.NOME AS 'CIDADE',
       ES.SIGLA AS 'UF',
       E.LOGRADOURO AS 'LOGRADOURO'
FROM ENDERECO E, CIDADE C, ESTADO ES
WHERE E.IDCIDADE = C.ID AND
      C.IDESTADO = ES.ID
ORDER BY C.NOME;



Entendendo o Código


Com o comando "SELECT" eu estou pedindo para ele selecionar as informações, o "FROM" é como aquele amigo chato que fica colocando apelido, ou seja, ele põe apelidos nos campos das tabelas, Exemplo: ESTADO E, CIDADE C, CLIENTE CL, aqui eu chamei o estado de "E", cidade eu chamei de "C" e o cliente eu chamei de "CL", isto porque se estiver dois campos diferentes com o mesmo apelido irá confundir o select. O comando "WHERE" e um a cláusula, ele faz comparações, um exemplo disso é no select do cliente ele diz que o campo IDENDERECO da tabela cliente é igual ao campo ID da tabela Endereço, e assim por diante, usando essa cláusula eu posso pesquisar informações que estão em tabelas diferentes usando um select único.


Criando as View


Depois de termos feito os select, vamos criar uma view, para que serve um view? Bom ele serve para não termos a necessidade de esta digitando repetidas vezes os comandos do select sempre que precisarmos dele, mas, para criar a view é importante sempre criar o select e testa. Então vamos à criação da view.


Para criar a view é muito simples, após ter criado o select e testado basta escrever "create view "nome da view" as e o select", veja o exemplo abaixo, vou criar a view para pesquisar meus clientes.

create view pesquisar_clientes as 
SELECT C.ID AS 'ID CLIENTE',
       C.NOME AS 'CLIENTE',
       C.CPF AS 'CPF',
       C.IDENTIDADE AS 'IDENTIDADE',
       E.LOGRADOURO AS 'LOGRADOURO',
       E.SETOR AS 'SETOR',
       CD.NOME AS 'CIDADE',
       ES.SIGLA AS 'UF',
       C.TELEFONE1 AS 'FONE 1',
       C.TELEFONE2 AS 'FONE 2',
       C.CONTATO_EMAIL AS 'E-MAIL',
       C.CONTATO_MSN AS 'MSN'
FROM CLIENTE C, ENDERECO E, CIDADE CD, ESTADO ES
WHERE C.IDENDERECO = E.ID AND
      E.IDCIDADE = CD.ID AND
      CD.IDESTADO = ES.ID
ORDER BY C.NOME;

terça-feira, fevereiro 07, 2012

Criação de Tabelas Mysql

      Olá amigos, vamos aprender a criar tabelas para nosso BD (Banco de Dados). Para estes comandos terem validades você já tem que está com seu ambiente de trabalho preparado, sua database já tem que está criada, e tem que está selecionada, para fazer isto basta digitar o comando, "use nome_database" sem as aspas.

      Vamos imaginar que já temos nosso ambiente de trabalho, então vamos criar uma tabela chamada cliente, que estará relacionando com as tabela estado, cidade. Em outro post estarei mostrando como você prepara seu ambiente de trabalho, iremos aprender a criar um BD do inicio ao fim, mas para isto temos que aprender alguns comandos primeiro. Então sem mais delongas vamos ao que interessa.

       Vamos começa por uma tabela que não tenha chave estrangeira, isso iremos ver nas definições de dados, mas isto será em outro post, como disse vamos imaginar que já temos todo nosso ambiente de trabalho preparado e só temos que digitar os comandos de criação. 
      


                                                                Criando a tabela  "Estado"

create table estado (                                                   
id int not null primary key auto_increment,               
nome varchar (50) not null,
sigla char (2) not null);

                                                                 Criando a tabela "Cidade"

create table cidade (
id int not null primary key auto_increment,
nome varchar (50) not null,
idestado int not null,
foreign key (idestado) references estado (id));


                                                                  Criando a tabela "Endereco"

create table endereco (
id int not null primary key auto_increment,
logradouro varchar (100) default null,
setor varchar (50) default null,
idcidade int not null,
foreign key (idcidade) references cidade (id));


                                                                 Criando a tabela "Cliente"


create table cliente (
id int not null primary key auto_increment,
nome varchar (45) not null,
cpf char (11) default null,
identidade varchar (20) default null,
idendereco int not null,
telefone1 char (12) default null,
telefone2 char (12) default null,
contato_email varchar (100) default null,
contato_msn varchar (100) default null,
foreign key (idendereco) references endereco (id));