{"id":19690,"date":"2019-11-26T16:59:17","date_gmt":"2019-11-26T18:59:17","guid":{"rendered":"https:\/\/king.host\/wiki\/?post_type=article&#038;p=19690"},"modified":"2024-09-13T09:08:14","modified_gmt":"2024-09-13T12:08:14","slug":"functions-e-procedures-no-mysql","status":"publish","type":"article","link":"https:\/\/king.host\/wiki\/artigo\/functions-e-procedures-no-mysql\/","title":{"rendered":"Functions e Procedures no MySQL"},"content":{"rendered":"\n<p>Precisando trabalhar com <a aria-label=\"Functions (abre numa nova aba)\" href=\"https:\/\/dev.mysql.com\/doc\/refman\/5.7\/en\/functions.html\" target=\"_blank\" rel=\"noreferrer noopener\">Functions<\/a> e Procedures no MySQL? \u00c9 prov\u00e1vel que sim em algum momento do seu projeto! Sendo assim, aqui voc\u00ea encontra o conte\u00fado inicial para come\u00e7ar a utilizar estes recursos em seu banco de dados.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/king.host\/?utm_source=wiki&amp;utm_medium=banner-artigo&amp;utm_campaign=banner-artigo-wiki-awareness-functions-e-procedures-no-mysql\" target=\"_blank\" rel=\"noreferrer noopener\"><img data-original=\"https:\/\/king.host\/wiki\/wp-content\/uploads\/2015\/05\/banner_1.png\" alt=\"banner-kinghost\" class=\"wp-image-25436\"\/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Mas_o_que_sao_Functions_e_Procedures_exatamente\"><\/span>Mas o que s\u00e3o Functions e Procedures exatamente?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Em resumo, <strong>Procedures e Functions s\u00e3o rotinas definidas no banco de dados<\/strong>, identificadas por um nome pelo qual podem ser invocadas. <\/p>\n\n\n\n<p>Dessa forma, um procedimento desses pode executar uma s\u00e9rie de instru\u00e7\u00f5es, receber par\u00e2metros e retornar valores.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Utilizando_PROCEDURES\"><\/span>Utilizando PROCEDURES<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Uma PROCEDURE (tamb\u00e9m chamada stored procedure) \u00e9 uma subrotina que \nfica armazenada no banco de dados. Uma PROCEDURE tem um nome, uma lista \nde par\u00e2metros e declara\u00e7\u00f5es de comandos SQL.<\/p>\n\n\n\n<p>Utilize o modelo de c\u00f3digo abaixo para realizar a cria\u00e7\u00e3o de um PROCEDURE:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\" lang=\"wp-block-preformatted\">DELIMITER $$\nCREATE PROCEDURE nome_procedimento (par\u00e2metros)\nBEGIN\n&nbsp;&nbsp;&nbsp;&nbsp;\/*CORPO DO PROCEDIMENTO*\/\nEND $$\nDELIMITER ;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Utilizando_FUNCTIONS\"><\/span>Utilizando FUNCTIONS<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>No Mysql uma FUNCTION \u00e9 uma fun\u00e7\u00e3o armazenada onde \u00e9 poss\u00edvel passar par\u00e2metros para ela e ent\u00e3o retornar um valor. <\/p>\n\n\n\n<p>Utilize o modelo de c\u00f3digo abaixo para realizar a cria\u00e7\u00e3o de um FUNCTION:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\" lang=\"wp-block-preformatted\">DELIMITER $$\nCREATE FUNCTION nome_function (par\u00e2metros)\nRETURNS retorna_valor\nBEGIN\n&nbsp;\n\/*CORPO DA FUN\u00c7\u00c3O*\/\n&nbsp;\nEND $$\nDELIMITER ;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Functions_e_Procedures_no_PHPMyAdmin\"><\/span>Functions e Procedures no PHPMyAdmin<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Caso voc\u00ea queira criar <em>Functions<\/em> e <em>Procedures<\/em> atrav\u00e9s do <strong>PHPMyAdmin<\/strong>, precisamos alterar algumas coisas na sintaxe da instru\u00e7\u00e3o.<\/p>\n\n\n\n<p>Nos exemplos acima, percebe-se que o <strong>DELIMITER<\/strong> vem incorporado, assim como os cifr\u00f5es ($$). No PHPMyAdmin, isso n\u00e3o ser\u00e1 necess\u00e1rio, pois a pr\u00f3pria ferramenta acrescenta o delimitador fora das instru\u00e7\u00f5es SQL. Veja abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"859\" height=\"626\" data-src=\"https:\/\/king.host\/wiki\/wp-content\/uploads\/2019\/11\/image-1.png\" alt=\"\" class=\"wp-image-19693 lazyload\" v-on:click=\"toggle_modal\" data-srcset=\"https:\/\/king.host\/wiki\/wp-content\/uploads\/2019\/11\/image-1.png 859w, https:\/\/king.host\/wiki\/wp-content\/uploads\/2019\/11\/image-1-300x219.png 300w, https:\/\/king.host\/wiki\/wp-content\/uploads\/2019\/11\/image-1-768x560.png 768w\" data-sizes=\"(max-width: 859px) 100vw, 859px\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" style=\"--smush-placeholder-width: 859px; --smush-placeholder-aspect-ratio: 859\/626;\" \/><noscript><img loading=\"lazy\" decoding=\"async\" width=\"859\" height=\"626\" src=\"https:\/\/king.host\/wiki\/wp-content\/uploads\/2019\/11\/image-1.png\" alt=\"\" class=\"wp-image-19693\" v-on:click=\"toggle_modal\" srcset=\"https:\/\/king.host\/wiki\/wp-content\/uploads\/2019\/11\/image-1.png 859w, https:\/\/king.host\/wiki\/wp-content\/uploads\/2019\/11\/image-1-300x219.png 300w, https:\/\/king.host\/wiki\/wp-content\/uploads\/2019\/11\/image-1-768x560.png 768w\" sizes=\"(max-width: 859px) 100vw, 859px\" \/><\/noscript><\/figure>\n\n\n\n<box-info>Veja tamb\u00e9m:<br><a href=\"https:\/\/king.host\/wiki\/artigo\/trabalhando-com-triggers-no-mysql\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Trabalhando com Triggers no Mysql (abre numa nova aba)\">Trabalhando com Triggers no Mysql<\/a><\/box-info>\n","protected":false},"author":9,"featured_media":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","article-category":[176],"article-tag":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/king.host\/wiki\/wp-json\/wp\/v2\/article\/19690"}],"collection":[{"href":"https:\/\/king.host\/wiki\/wp-json\/wp\/v2\/article"}],"about":[{"href":"https:\/\/king.host\/wiki\/wp-json\/wp\/v2\/types\/article"}],"author":[{"embeddable":true,"href":"https:\/\/king.host\/wiki\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/king.host\/wiki\/wp-json\/wp\/v2\/comments?post=19690"}],"version-history":[{"count":1,"href":"https:\/\/king.host\/wiki\/wp-json\/wp\/v2\/article\/19690\/revisions"}],"predecessor-version":[{"id":25448,"href":"https:\/\/king.host\/wiki\/wp-json\/wp\/v2\/article\/19690\/revisions\/25448"}],"wp:attachment":[{"href":"https:\/\/king.host\/wiki\/wp-json\/wp\/v2\/media?parent=19690"}],"wp:term":[{"taxonomy":"article-category","embeddable":true,"href":"https:\/\/king.host\/wiki\/wp-json\/wp\/v2\/article-category?post=19690"},{"taxonomy":"article-tag","embeddable":true,"href":"https:\/\/king.host\/wiki\/wp-json\/wp\/v2\/article-tag?post=19690"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}