Arquivo da tag: mysql

Alterando o storage engine de uma tabela no MySQL

Muitas vezes precisamos alterar o storage engine de uma tabela. No MySQL isto é algo bem simples e pode ser feito utilizando o comando ALTER TABLE.

Para alterar o storage engine de uma tabela basta digitar:

ALTER TABLE nome_tabela ENGINE = 'InnoDB';

Onde nome_tabela é o nome da tabela a ser atualizada e InnoDB é o novo storage engine da tabela.

Até a próxima 😉

 

Tutorial básico sobre joins

Joins (junções) são um recurso presente nos bancos de dados relacionais, através da qual é possível juntar o conteúdo de duas tabelas através de um critério. É um conceito que muitas vezes quem está iniciando no mundo dos bancos de dados relacionais tem dificuldade de entender. As joins mais utilizadas são: INNER, LEFT, RIGHT, CROSS.

Neste tutorial vou utilizar o MySQL, apesar do conceito e possivelmente os comandos não mudarem muito de banco para banco. Vamos utilizar 2 tabelas: pedidos e vendedores.

Continue lendo

Diferença entre os campos TEXT e BLOB do MySQL

O MySQL possui dois tipos de campos muito similares para armazenamento de textos: o tipo TEXT e o tipo BLOB. Ambos possuem as variações TINY, MEDIUM e LONG. Assim temos TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT e também TINYBLOB, BLOB, MEDIUMBLOB e LONGBLOB. Os tipos TEXT e BLOB portanto tem apenas uma única diferença: os campos do tipo TEXT não são case-sensitive, já os campos BLOB são case-sensitive.

Vamos imaginar uma tabela chamada clientes e um campo chamado nome, com o seguinte valor:

nome -> Maria

E valos imaginar a seguinte consulta:

SELECT * FROM clientes WHERE nome = ‘maria’

Se o campo for do tipo TEXT, a consulta acima irá retornar o campo previamente definido, porém se o campo for do tipo BLOB, o campo acima não será retornado na consulta, já que campos TEXT são case-insensitive e campos BLOB são case-sensitive.

Até a próxima 😉

Paginando resultados no MySQL

Em muitos casos, possuimos uma quantidade gigantesca de dados porém gostaríamos de exibir os resultados para o usuário de uma forma mais organizada, dividindo os dados em pequenas porções, para que a navegação e a visualização se torne mais agradável. Isto é feito através da paginação.

No MySQL podemos paginar resultados basicamente através de dois comandos: o comando LIMIT e o comando OFFSET. Nos dois casos, precisamos informar a partir de qual registro os resultados serão exibidos.

Vamos a um exemplo utilizando somente o comando LIMIT:

Continue lendo

Forçando busca case sensitive no MySQL

Muitas vezes é necessário fazer uma busca case-sensitive em um campo, porém em alguns casos o collation pode nao permitir isto ou ainda o campo a ser pesquisado ser do tipo BLOB (mesma coisa que o campo TEXT, porém não é case sensitive). Para isto, devemos forçar o MySQL a fazer uma comparação binária entre as strings. Isto é feito através do operador BINARY.

Vamos a um exemplo:

Continue lendo

Backup de todas as bases de dados do MySQL

Eai galera, apresento-lhes um script simples para realização do backup de todas as bases de dados do MySQL de um servidor Linux/Unix. O script cria um arquivo com o nome e a data do backup no formato “backup_23012012.sql” contendo o dump de todas as bases de dados do servidor.

Continue lendo