domingo, 6 de janeiro de 2013

Como criar funções "Stored Functions" no MySql usando o Navicat.

Vamos criar uma função que vai retirar todos os tipos de acentuação das strings.

Abra o Navicat, escolha o banco de dados e clique na aba Functions. 

Clique no ícone New Functions e escolha o tipo, clicando em functions.

Clique em finish. Deverá aparecer a seguinte tela:


Prencha exatamente como está nesta tela depois clique na aba Advanced  para configurar mais tres parâmetros. Security: Definer  |  Definer: root@localhost  | Data Access: CONTAINS SQL  | Clique na caixa DETERMINISTIC. 

Salve sua função com o nome f_remove_acentos.

Nota: Caso a opção NO SQL seja escolhida a opção DETERMINISTIC poderá ficar desmarcada.

Agora podemos criar uma consulta na através da  aba query como esta:

SELECT f_remove_acentos(`description`) from tabela; // description é o nome do campo da tabela que contém as strings que devem ser submetidas a função para retiradas da  acentuação.

Esta função não retira de fato os acentos, apenas oculta-os. Para a retirada deve se usar UPDATE. 

No próximo colocarei um post sobre Procedimento Armazenado - Stored Procedures, que modificam de fato a base de dados com comandos Updates, usando também o Navicat.

Nenhum comentário :

Postar um comentário

Pergunte, inquira, descubra...