Beruflich Dokumente
Kultur Dokumente
http://www.blogalizado.com.br/banco-de-dados-m...
busca Go
Agenda Cloud Desenvolvimento Agile Arq. de Software MVC Banco de Dados MySQL NoSQL PostGreSQL Controle de Verso GIT SVN Eng. de Software CMMI Gesto de Projeto IDE Eclipse Programao CSS HTML JavaScript Ajax jQuery JSON Orientao a objetos PHP Smarty WordPress Zend Framework Python Django Servidores / SO
1 de 11
21-01-2014 11:03
http://www.blogalizado.com.br/banco-de-dados-m...
Apache Linux Tomcat Windows Marketing Digital Mdias Sociais SEM SEO Software Livre GNU/Linux Ubuntu UI
Eu e o Software Livre
Curtir
Compartilhar
O objetivo deste artigo apresentar conhecimentos bsicos sobre banco de dados, com um pequeno tutorial recomendado para iniciantes. Usarei MySQL para os exemplos que hoje o banco mais usado na internet, a grande maioria dos sites, blogs, e lojas virtuais usam o MySQL, no que ele seja a melhor opo mas por ser a mais popular ser esse o abordado. O MySQL um SGBD (Sistema Gerenciador de Banco de Dados), que capaz de gerenciar mltiplos bancos de dados independentes, cada banco de dados pode ser composto por tabelas, views, stored procedures, triggers e functions. Uma tabela contm um conjunto de caractersticas para armazenar os registros, essas caractersticas so tipadas de forma que o dado a ser inserido na tabela deva ser do tipo correspondente ao que foi denido para a coluna. Instalao Para usurio de GNU/Linux o processo de instalao muito simples, execute o comando: 1
2 de 11
http://www.blogalizado.com.br/banco-de-dados-m...
Durante a instalao aparecer uma janela de solicitao de senha (Eu por comodismo sempre uso root, na minha mquina local claro). Para usurios de Windows, se ja tem o WAMP instalado, basta, pois ele tem um terminal chamado MySQL Console, por esse terminal que faremos todas as consultas. Caso voc ainda no tenha faa o download pelo site http://dev.mysql.com/downloads/. Escolhi montar esse tutorial usando o console como interface para que iniciantes no associem banco de dados com alguma ferramenta automatizada, o objetivo repassar conhecimentos bsicos, portanto se voc executar em modo console ir conseguir usar seus conhecimentos em qualquer outra ferramenta. Iniciando Para iniciar o MySQL em modo console abra o terminar do ser sistema operacional e digite: 1 $ mysql -u root -p
Onde root o nome de usurio que voc iniciar a sesso, aps executar esse comando o terminal solicitar uma senha. Passado essa etapa o terminal ir apresentar o cursor aguardando um novo comando, mas dessa vez so comandos de SQL vlidos para o MySQL. Para visualizar todos os bancos de dados do seu servidor MySQL execute: 1 mysql> SHOW DATABASES;
O terminal dever exibir uma listagem dos bancos atuais, como no exemplo abaixo: 1 2 3 4 5 6 7 +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | phpmyadmin | +--------------------+
Criando seu primeiro banco de dados Para criar um novo banco de dados execute o comando: 1 mysql> CREATE DATABASE nomebanco;
mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | nomebanco | | phpmyadmin |
21-01-2014 11:03
http://www.blogalizado.com.br/banco-de-dados-m...
+--------------------+
Ok, banco de dados criado agora podemos comear a manipular dados, mas antes precisamos informar para o terminal qual o banco de dados que iremos trabalhar, para isso execute o comendo: 1 mysql> USE nomebanco;
Se aparecer a mensagem: Database changed esta tudo certo, agora sim podemos continuar. Tabelas Criar uma tabela: 1 2 3 4 5 6 7 8 mysql> CREATE TABLE nometabela ( id INT AUTO_INCREMENT PRIMARY KEY, nome VARCHAR(100) NOT NULL, sexo ENUM('m','f') DEFAULT 'm', data DATE, descricao TEXT, salario DECIMAL(10,2) );
Nesse exemplo foi criada uma tabela ctcia com algumas colunas de tipos diferentes de dados, apenas para demonstrar a aplicabilidade de alguns desses tipos, recomendo que voc consulte da documentao do banco de dados que for trabalhar para identicar quais os tipos de dados suportados. Para visualizar as tabelas de um banco de dados: 1 1 2 3 4 5 mysql> SHOW TABLES; +---------------------+ | Tables_in_nomebanco | +---------------------+ | nometabela | +---------------------+
Para visualizar a descrio da uma tabela execute a query: 1 01 02 03 04 05 06 07 08 09 10 mysql> DESC nometabela; +-----------+---------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------+---------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | nome | varchar(100) | NO | | NULL | | | sexo | enum('m','f') | YES | | m | | | data | date | YES | | NULL | | | descricao | text | YES | | NULL | | | salario | decimal(10,2) | YES | | NULL | | +-----------+---------------+------+-----+---------+----------------+
Inserir registros
4 de 11
21-01-2014 11:03
http://www.blogalizado.com.br/banco-de-dados-m...
1 2
mysql> INSERT INTO nometabela (nome, sexo, data, descricao, salario) VALUES mysql> INSERT INTO nometabela (nome, sexo, data, descricao, salario) VALUES
Consultar registros Para retornar todas as colunas de uma tabela voc pode usar o seletor * (asterisco), como no exemplo abaixo. 1 1 2 3 4 5 6 mysql> SELECT * FROM nometabela; +----+------------+------+------------+-----------+---------+ | id | nome | sexo | data | descricao | salario | +----+------------+------+------------+-----------+---------+ | 1 | Joozinho | m | 1985-04-29 | blablabla | 999.99 | | 2 | Mariazinha | f | 1984-06-18 | nonono | 1234.99 | +----+------------+------+------------+-----------+---------+
Se quiser exibir os registros de forma linear execute sua query com um \G: 1 01 02 03 04 05 06 07 08 09 10 11 12 13 14 mysql> SELECT * FROM nometabela \G; *************************** 1. row *************************** id: 1 nome: Joozinho sexo: m data: 1985-04-29 descricao: blablabla salario: 999.99 *************************** 2. row *************************** id: 2 nome: Mariazinha sexo: f data: 1984-06-18 descricao: nonono salario: 1234.99
Evite usar sempre o * (asterisco) por questes de performance do seu banco de dados. Realize suas consultas informando quais as colunas voc precisa. 1 1 2 3 4 5 6 mysql> SELECT nome, salario FROM nometabela; +------------+---------+ | nome | salario | +------------+---------+ | Joozinho | 999.99 | | Mariazinha | 1234.99 | +------------+---------+
Voc tambm pode adicionar ltros na consulta, como por exemplo: Registros que contenham nome Maria: 1 1 2 mysql> SELECT * FROM nometabela WHERE nome LIKE '%Maria%'; +----+------------+------+------------+-----------+---------+ | id | nome | sexo | data | descricao | salario |
5 de 11
21-01-2014 11:03
http://www.blogalizado.com.br/banco-de-dados-m...
3 4 5
Registros do sexo masculino: 1 1 2 3 4 5 mysql> SELECT * FROM nometabela WHERE sexo = 'm'; +----+------------+------+------------+-----------+---------+ | id | nome | sexo | data | descricao | salario | +----+------------+------+------------+-----------+---------+ | 1 | Joozinho | m | 1985-04-29 | blablabla | 999.99 | +----+------------+------+------------+-----------+---------+
Registros com salrio maior que 1000: 1 1 2 3 4 5 mysql> SELECT * FROM nometabela WHERE salario > 1000; +----+------------+------+------------+-----------+---------+ | id | nome | sexo | data | descricao | salario | +----+------------+------+------------+-----------+---------+ | 2 | Mariazinha | f | 1984-06-18 | nonono | 1234.99 | +----+------------+------+------------+-----------+---------+
mysql> SELECT * FROM nometabela WHERE data BETWEEN '1985-04-20' AND '1985-04-30' +----+------------+------+------------+-----------+---------+ | id | nome | sexo | data | descricao | salario | +----+------------+------+------------+-----------+---------+ | 1 | Joozinho | m | 1985-04-29 | blablabla | 999.99 | +----+------------+------+------------+-----------+---------+
Registros com descrio diferente de vazio: 1 Ou 1 mysql> SELECT * FROM nometabela WHERE descricao IS NOT NULL; mysql> SELECT * FROM nometabela WHERE descricao <> NULL;
Contagem do total de registros na tabela: 1 1 2 3 4 5 mysql> SELECT COUNT(*) AS quantidade FROM nometabela; +------------+ | quantidade | +------------+ | 2 | +------------+
Listar 1 registro de forma aleatria: 1 mysql> SELECT * FROM nometabela ORDER BY RAND() LIMIT 1;
6 de 11
21-01-2014 11:03
http://www.blogalizado.com.br/banco-de-dados-m...
Alterar registros Para 1 mysql> UPDATE nometabela SET nome = 'Joozinho da Silva' WHERE id = 1;
Resetar uma tabela Caso precise limpar totalmente uma tabela e reiniciar o contador do auto_increment use o comando TRUNCATE. 1 mysql> TRUNCATE nometabela;
Para sair do modo console do MySQL digite: exit; Realizar Backup do banco de dados 1 $ mysqldump -u root -p nomebanco > caminho_destino
O parmetro caminho_destino o endereo local para onde o backup ser gerado, pode ser por exemplo /home/user/bkp_nomebanco.sql para sistemas GNU/Linux ou C:\\bkp_nomebanco.sql. Restaurar Backup do banco de dados 1 $ mysql -u root -p -D nomebanco < caminho_origem
O parmetro caminho_origem o endereo local de onde o arquivo de backup ser restaurado. isso, por enquanto! so comandos bsicos em SQL, essnciais para qualquer desenvolvedor, espero que tenha ajudado.
Artigos Relacionados
Zend Framework Parte 4 Banco de Dados Modelando Banco de Dados com MySQL Workbench Selecionar prximo auto_increment no MySQL Django Framework Parte 4 CRUD Django Framework Parte 3 Painel Admin
7 de 11
21-01-2014 11:03
http://www.blogalizado.com.br/banco-de-dados-m...
Runrun.it
runrun.it/Cadastre-se Crie Sua Conta Grtis e Saiba Mais. Melhor Forma de Gerenciar Projetos!
1.
Ane Caroline disse: 13 de novembro de 2011 s 2:08 Parabns pelo artigo, deu tudo super certo! Aprendi muito! Responder
2.
3.
Diogenes Laertius disse: 7 de janeiro de 2014 s 16:04 Parabns pelo material, ajudou bastante! Muito Bom! Responder
8 de 11
21-01-2014 11:03
http://www.blogalizado.com.br/banco-de-dados-m...
Site
Enviar Comentrio
Avisar sobre novos comentrios via e-mail
RSS Assine o RSS feeds! Twitter Siga-me no Twitter! Facebook Siga-me no Facebook SlideShare Meus Slides no SlideShare Contato Formulrio de Contato
Find us on Facebook
BloGalizado
Like 94 people like BloGalizado.
Mais Populares
Congurar Servidor Web no Cloud Amazon (AWS) Ir para o topo da pgina usando jQuery Iterando Array Multidimensional em JSON com jQuery Facebook - Dicas bsicas para alavancar o seu negcio!
9 de 11
21-01-2014 11:03
http://www.blogalizado.com.br/banco-de-dados-m...
ltimos Posts
Congurar FTP em uma instncia EC2 da Amazon com Ubuntu e ProFTPD Congurar Servidor Web no Cloud Amazon (AWS) Facebook Dicas bsicas para alavancar o seu negcio! Palestra sobre HTML 5 e Web Semntica UTP Prosso SEM (Search Engine Marketing)
Tags
Ajax
GIT Guake htaccess HTTP ini Integrao jQuery jQueryUI JSON e PHP Metodologias geis Mini
Curso MySQL PA - Process Area PHP php.ini Plugin Python SEO Servidor WEB Subversion SVN Terminal Tutorial Tutorial Django Tutorial Zend User Interface
WebStandards Windows
Lista de Links
Turismo2Rodas Viagens de Motos
Nuvem de Tags
Agenda Agile Ajax
Verso CSS
Projeto
GIT GNU/Linux
MVC MySQL
PHP PostGreSQL
Servidores / SO Smarty Software Livre SVN Tomcat Ubuntu UI Windows WordPress Zend Framework
Diogenes Laertius em Banco de Dados MySQL Primeiros Passos Evandro Klimpel Balmant em Congurar Servidor Web no Cloud Amazon (AWS) Evandro Klimpel Balmant em Popular um Select (combo) com jQuery + Ajax + JSON Evandro Klimpel Balmant em Instalar Apache + PHP + MySQL no Linux Maurcio Cubas em Django Framework Parte 4 CRUD
10 de 11
21-01-2014 11:03
http://www.blogalizado.com.br/banco-de-dados-m...
busca Go
BloGalizado Globalizando WebLogs. Este blog esta licenciado sob a Creative Commons Atribuio 3.0 Unported License. Desenvolvido com Wordpress. Tema UpSide por DynamicWP & Six Revisions. Adaptado por ComuniCAD
11 de 11
21-01-2014 11:03