{"id":307,"date":"2019-03-25T17:30:13","date_gmt":"2019-03-25T20:30:13","guid":{"rendered":"http:\/\/xexeu.elipse.com.br\/pt\/stored-procedures-procedimentos-armazenados\/"},"modified":"2024-03-28T16:35:57","modified_gmt":"2024-03-28T19:35:57","slug":"stored-procedures-procedimentos-armazenados","status":"publish","type":"post","link":"https:\/\/kb.elipse.com.br\/en\/stored-procedures-procedimentos-armazenados\/","title":{"rendered":"Stored Procedures (Procedimentos Armazenados)."},"content":{"rendered":"<div align=\"justify\">\n<p><b>1) Introdu\u00e7\u00e3o<\/b><\/p>\n<p>Embora o Elipse E3 j\u00e1 possua objetos que facilitam a manipula\u00e7\u00e3o de registros do banco de dados\u00a0 (como a Consulta), \u00e9 poss\u00edvel melhorar seu desempenho criando diretamente no BD, atrav\u00e9s da linguagem T-SQL, sub-rotinas que realizam as tarefas no servidor de forma eficaz e com alto desempenho.<\/p>\n<p><b>2) Consultas no E3<\/b><\/p>\n<p>Como padr\u00e3o, a Consulta do E3 \u00e9 utilizada para acessar registros de uma tabela no banco de dados. Em alguns casos, s\u00e3o empregadas conex\u00f5es ADO via script, o que n\u00e3o \u00e9 necess\u00e1rio no E3 quando o banco utilizado for SQL Server, Access ou Oracle.<\/p>\n<p>A Consulta trabalha apontando para uma (ou mais) tabela(s). Nesta(s) tabela(s), s\u00e3o selecionados alguns (ou todos os) campos, e retornados os registros encontrados. \u00c9 poss\u00edvel utilizar comandos como DELETE, INSERT e UPDATE editando a aba SQL da Consulta, ou ainda utilizar fun\u00e7\u00f5es SQL e aplicar filtros com a cl\u00e1usula WHERE.<\/p>\n<p>Quando o problema n\u00e3o \u00e9 o tr\u00e1fego na rede, a utiliza\u00e7\u00e3o das consultas \u00e9 a melhor op\u00e7\u00e3o e a mais recomendada.<\/p>\n<p><b>3) Utilizando stored procedures<\/b><\/p>\n<p>Uma stored procedure \u00e9 um conjunto de comandos ao qual atribu\u00edmos um nome. Esse conjunto fica armazenado no banco de dados (Servidor), podendo ser chamado a qualquer momento tanto pelo sistema gerenciador de banco de dados (SGBD) quanto por uma aplica\u00e7\u00e3o do E3.<\/p>\n<p>As stored procedures podem ser utilizadas quando o tr\u00e1fego de informa\u00e7\u00f5es na rede \u00e9 grande, ou quando a aplica\u00e7\u00e3o tem baixo desempenho e foi constatado que o consumo maior se deve \u00e0 manipula\u00e7\u00e3o de dados entre a aplica\u00e7\u00e3o e o banco de dados.<\/p>\n<p>Ao criar uma stored procedure, e poss\u00edvel passar par\u00e2metros de entrada e de sa\u00edda, os quais ir\u00e3o conter as informa\u00e7\u00f5es requeridas por um SELECT, por exemplo. Esses par\u00e2metros de entrada s\u00e3o passados da mesma forma como s\u00e3o passadas vari\u00e1veis para filtros na Consulta.<\/p>\n<p>Como as stored procedures s\u00e3o analisadas e armazenadas na mem\u00f3ria do servidor de dados ap\u00f3s sua primeira execu\u00e7\u00e3o, sua execu\u00e7\u00e3o \u00e9 mais r\u00e1pida do que a das instru\u00e7\u00f5es SQL, pois essas ser\u00e3o analisadas a cada chamada.<\/p>\n<p>Outro benef\u00edcio das stored procedures diz respeito ao volume de dados que devem ser enviados para e do SQL Server, podendo ser necess\u00e1rios alguns bytes para chamar um procedimento armazenado que cont\u00e9m v\u00e1rios milhares de bytes de instru\u00e7\u00f5es. O efeito acumulado dessa economia quando m\u00faltiplos usu\u00e1rios est\u00e3o executando tarefas repetitivas pode ser muito significativo.<\/p>\n<p><b>4) Aplica\u00e7\u00e3o (Banco de Dados)<\/b><\/p>\n<p>Foi criada uma aplica\u00e7\u00e3o exemplo que ilustra como utilizar as stored procedures para inserir, ler e apagar registros no banco de dados.<\/p>\n<p>Basicamente, a aplica\u00e7\u00e3o permite a manuten\u00e7\u00e3o dos dados da tabela <b>Motores<\/b>, onde o usu\u00e1rio tem permiss\u00e3o de inserir, apagar e verificar dados de motores em sua planta de f\u00e1brica. Ser\u00e3o utilizados o SQL Server 2005 Express para criar a tabela e as stored procedures.<\/p>\n<p>Inicialmente, abra o SQL Server e conecte ao servidor local com a senha e o usu\u00e1rio criados nas instala\u00e7\u00e3o do SQL Server na m\u00e1quina local.<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura1.PNG\" alt=\"\" width=\"417\" height=\"309\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 1:<\/b> Conex\u00e3o ao SQL Server<\/span><\/div>\n<p>Com o SQL Server aberto, crie um novo banco chamado <b>Equipamentos <\/b>e nele crie a tabela <b>Motores<\/b>. Esta tabela cont\u00e9m as colunas <b>Fabricante<\/b>, <b>Area<\/b>, <b>Maquina<\/b>, <b>Potencia<\/b>, <b>Corrente <\/b>e <b>Tensao<\/b>. Os campos ser\u00e3o do tipo nchar(10), nchar(10), nchar(10), float, float e float, respectivamente, conforme ilustra a figura:<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura2.PNG\" alt=\"\" width=\"550\" height=\"163\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 2:<\/b> Cria\u00e7\u00e3o da tabela Motores<\/span><\/div>\n<p>Dentro do banco <b>Equipamentos<\/b>, acesse a pasta <b>Programmability<\/b>. Clicando com o bot\u00e3o direito sobre a pasta <b>Stored Procedures<\/b>, selecione a op\u00e7\u00e3o <b>New Stored Procedure<\/b>.<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura3.PNG\" alt=\"\" width=\"550\" height=\"261\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 3<\/b>: Cria\u00e7\u00e3o da stored procedure<\/span><\/div>\n<p>\u00c0 direita, ser\u00e1 aberta uma \u00e1rea de edi\u00e7\u00e3o onde ser\u00e3o criadas as stored procedures e apagado todo o c\u00f3digo que aparece como padr\u00e3o.<\/p>\n<p>Insira o seguinte c\u00f3digo:<br \/>\n<span style=\"color: #0000ff; font-family: Courier New;\"><br \/>\n<\/span><\/p>\n<div align=\"left\"><span style=\"font-family: Courier New;\"><span style=\"color: #0000ff;\">CREATE PROCEDURE<\/span> procInsertMotor<\/span><br \/>\n<span style=\"font-family: Courier New;\">@MFabricante <span style=\"color: #0000ff;\">nchar<\/span>(10),<\/span><br \/>\n<span style=\"font-family: Courier New;\">@MPotencia <span style=\"color: #0000ff;\">float<\/span>,<\/span><br \/>\n<span style=\"font-family: Courier New;\">@MCorrente <span style=\"color: #0000ff;\">float<\/span>,<\/span><br \/>\n<span style=\"font-family: Courier New;\">@MTensao <span style=\"color: #0000ff;\">float<\/span>,<\/span><br \/>\n<span style=\"font-family: Courier New;\">@MArea <span style=\"color: #0000ff;\">nchar<\/span>(10),<\/span><br \/>\n<span style=\"font-family: Courier New;\">@MMaquina <span style=\"color: #0000ff;\">nchar<\/span>(10)<\/span><br \/>\n<span style=\"color: #0000ff; font-family: Courier New;\">as<\/span><br \/>\n<span style=\"font-family: Courier New;\"><span style=\"color: #0000ff;\">INSERT INTO<\/span> Motores <\/span><br \/>\n<span style=\"font-family: Courier New;\">(Fabricante,Potencia,Corrente,Tensao,Area,Maquina)<\/span><br \/>\n<span style=\"color: #0000ff; font-family: Courier New;\">VALUES<\/span><br \/>\n<span style=\"font-family: Courier New;\">(@MFabricante,@MPotencia,@MCorrente,@MTensao,@MArea,@MMaquina)<\/span><\/div>\n<p>Com esse c\u00f3digo, est\u00e1 sendo criada a procedure que ir\u00e1 inserir os dados dos motores atrav\u00e9s do comando CREATE PROCEDURE, que tem como par\u00e2metro o nome <b>procInsertMotor<\/b>.<\/p>\n<p>Em seguida, declare as vari\u00e1veis de entrada, que ir\u00e3o receber os valores enviados pelo aplicativo Elipse. As vari\u00e1veis de entrada devem come\u00e7ar com o s\u00edmbolo @ (arroba) seguidas do tipo (data type). Depois, defina a instru\u00e7\u00e3o SQL a ser executada, no caso de inser\u00e7\u00e3o, utilizamos o comando INSERT INTO, seguido do nome da tabela; colocamos ent\u00e3o o nome das colunas e ap\u00f3s o comando VALUES colocamos as vari\u00e1veis, na ordem especificada. No final, clique no bot\u00e3o [Parse] ao lado do bot\u00e3o [Execute!].<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura4.PNG\" alt=\"\" width=\"550\" height=\"327\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 4<\/b>: C\u00f3digo da stored procedure procInsertMotor<\/span><\/div>\n<p>Criamos agora uma nova procedure da mesma maneira que a anterior; esta, por\u00e9m, ir\u00e1 selecionar os dados da tabela <b>Motores <\/b>com um filtro por fabricante, como segue:<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura5.PNG\" alt=\"\" width=\"550\" height=\"258\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 5<\/b>: C\u00f3digo da stored procedure procSelectMotor<\/span><\/div>\n<p>Agora vamos criar uma procedure que ir\u00e1 apagar os dados na tabela <b>Motores<\/b>, como ilustra a figura:<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura6.PNG\" alt=\"\" width=\"550\" height=\"219\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 6<\/b>: C\u00f3digo da stored procedure procDeleteMotor<br \/>\n<\/span><\/div>\n<p><b>5) Aplica\u00e7\u00e3o (E3)<\/b><\/p>\n<p>Agora que criamos e configuramos as stored procedures no banco de dados, precisamos definir como elas ser\u00e3o chamadas no E3.<\/p>\n<p>Crie um novo projeto (aplica\u00e7\u00e3o padr\u00e3o) e insira um objeto Banco de Dados, configure-o de modo a acessar o banco <b>Equipamentos<\/b>, onde configuramos as stored procedures e onde existe a tabela <b>Motores<\/b>.<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura7.PNG\" alt=\"\" width=\"336\" height=\"381\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 7<\/b>: Conex\u00e3o com a base de dados<br \/>\n<\/span><\/div>\n<p>Insira na aplica\u00e7\u00e3o tr\u00eas consultas e nomeie-as <b>ConsultaInsert<\/b>, <b>ConsultaDelete <\/b>e <b>ConsultaSelect<\/b>, sendo que as consultas <b>Insert <\/b>e <b>Delete <\/b>ficar\u00e3o na pasta de dados (servidor) e a consulta <b>Select <\/b>ficar\u00e1 na tela <b>Inicial<\/b>.<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura8.PNG\" alt=\"\" width=\"200\" height=\"266\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 8<\/b>: Inclus\u00e3o das consultas no projeto<\/span><\/div>\n<p>Comece pela consulta <b>Select<\/b>; clique com o bot\u00e3o direito sobre ela e acesse a op\u00e7\u00e3o <b>Configurar<\/b>.<\/p>\n<p>V\u00e1 at\u00e9 a aba <b>SQL <\/b>e habilite a edi\u00e7\u00e3o direta do c\u00f3digo SQL, digitando a seguinte linha:<\/p>\n<div align=\"left\"><span style=\"font-family: Courier New;\">Exec procSelectMotor &#8216;<%Fab%>&#8216;<br \/>\n<\/span><\/div>\n<p>&nbsp;<\/p>\n<div align=\"center\"><span style=\"font-size: xx-small;\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura9.PNG\" alt=\"\" width=\"545\" height=\"409\" align=\"Baseline\" border=\"0\" \/><\/span><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 9<\/b>: Inclus\u00e3o do c\u00f3digo SQL<\/span><\/div>\n<p>Este comando SQL ir\u00e1 executar (atrav\u00e9s da chamada Exec) uma procedure (nome da procedure) passando uma vari\u00e1vel como par\u00e2metro de entrada (<span style=\"font-family: Courier New;\">&#8216;<%Fab%>&#8216;<\/span>).<\/p>\n<p>Repita os passos anteriores para as consultas <b>Insert <\/b>e <b>Delete<\/b>, alterando apenas o comando SQL.<\/p>\n<p>Para a <b>ConsultaInsert<\/b>, utilize o comando:<\/p>\n<div align=\"left\"><span style=\"font-family: Courier New;\">Exec procInsertMotor &#8216;<%Fab%>&#8216;,<%Pot%>,<%Cor%>,<%Ten%>,&#8217;<%Ar%>&#8216;,&#8217;<%Maq%>&#8216;<\/span><\/div>\n<p>Para a <b>ConsultaDelete<\/b>:<\/p>\n<p><span style=\"font-family: Courier New;\">exec procDeleteMotor &#8216;<%Fab%>&#8216;,&#8217;<%Area%>&#8216;,&#8217;<%Maq%>&#8216; <\/span><\/p>\n<p><b>NOTA<\/b>: Para consultas localizadas no servidor, deve-se alterar a propriedade <i>CursorLocation <\/i>para <b>1 &#8211; clClient<\/b>.<\/p>\n<p>Ap\u00f3s configurar as consultas, vamos criar uma interface na tela onde o usu\u00e1rio possa ver os equipamentos j\u00e1 cadastrados, inserir novos equipamentos e apag\u00e1-los.<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura10.PNG\" alt=\"\" width=\"550\" height=\"295\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 10<\/b>: Interface da aplica\u00e7\u00e3o<\/span><\/div>\n<p>Insira um objeto E3Browser e configure-o para utilizar a <b>ConsultaSelect<\/b>.<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura11.PNG\" alt=\"\" width=\"436\" height=\"494\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 11<\/b>: Configura\u00e7\u00e3o do objeto E3Browser<\/span><\/div>\n<p>Insira um setpoint na tela e um bot\u00e3o para buscar os dados. Neste setpoint, crie um script no evento <i>Click()<\/i> e insira o seguinte script:<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura12.PNG\" alt=\"\" width=\"470\" height=\"195\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 12<\/b>: Script do bot\u00e3o de comando<br \/>\n<\/span><\/div>\n<p>Crie agora um bot\u00e3o para inserir novos dados; este bot\u00e3o ir\u00e1 abrir uma segunda tela onde o usu\u00e1rio ir\u00e1 digitar os dados do motor e confirm\u00e1-los, inserindo os dados na tabela <b>Equipamentos<\/b>.<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura13.PNG\" alt=\"\" width=\"258\" height=\"363\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 13<\/b>: Tela de inclus\u00e3o de equipamentos<\/span><\/div>\n<p>Feita esta tela, crie um script no bot\u00e3o [OK] que ir\u00e1 executar a <b>ConsultaInsert<\/b>:<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura14.PNG\" alt=\"\" width=\"550\" height=\"366\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 14<\/b>: C\u00f3digo para inclus\u00e3o do Equipamento<\/span><\/div>\n<p>Por fim, crie na tela inicial um bot\u00e3o para deletar os registros da tabela <b>Motores<\/b>; utilize o seguinte script no evento <i>Click()<\/i> do bot\u00e3o [Deletar]:<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura15.PNG\" alt=\"\" width=\"550\" height=\"294\" align=\"Baseline\" border=\"0\" \/><br \/>\n<span style=\"font-size: xx-small;\"><b>Figura 15<\/b>: C\u00f3digo para exclus\u00e3o do equipamento<br \/>\n<\/span><\/div>\n<p><b><br \/>\n6) Conclus\u00e3o<\/b><\/p>\n<p>Torna-se bastante eficaz a tarefa de manipular dados em um banco de dados, pois o c\u00f3digo fica centralizado, semelhantemente ao que acontece com as bibliotecas, e ao ser executado \u00e9 melhorado pelo pr\u00f3prio SQL, o que aumenta o desempenho da aplica\u00e7\u00e3o.<\/p>\n<\/div>\n<h3>Anexos:<\/h3>\n<p><a href=\"\/wp-content\/uploads\/2019\/03\/AppExemplo.zip\">AppExemplo<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Embora o Elipse E3 j\u00e1 possua objetos que facilitam a manipula\u00e7\u00e3o de registros do banco de dados\u00a0 (como a Consulta), \u00e9 poss\u00edvel melhorar seu desempenho&#8230;<br \/>\nAutor<br \/>\nRenato Souza<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0},"categories":[583],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Stored Procedures (Procedimentos Armazenados). - Elipse Knowledgebase<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Stored Procedures (Procedimentos Armazenados).\" \/>\n<meta property=\"og:description\" content=\"Embora o Elipse E3 j\u00e1 possua objetos que facilitam a manipula\u00e7\u00e3o de registros do banco de dados\u00a0 (como a Consulta), \u00e9 poss\u00edvel melhorar seu desempenho... Autor Renato Souza\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/\" \/>\n<meta property=\"og:site_name\" content=\"Elipse Knowledgebase\" \/>\n<meta property=\"article:publisher\" content=\"http:\/\/www.facebook.com\/elipsesoftware\" \/>\n<meta property=\"article:published_time\" content=\"2019-03-25T20:30:13+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-28T19:35:57+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura1.PNG\" \/>\n<meta name=\"author\" content=\"Elipse Software\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Elipse Software\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/\"},\"author\":{\"name\":\"Elipse Software\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87\"},\"headline\":\"Stored Procedures (Procedimentos Armazenados).\",\"datePublished\":\"2019-03-25T20:30:13+00:00\",\"dateModified\":\"2024-03-28T19:35:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/\"},\"wordCount\":2723,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\"},\"articleSection\":[\"DataBases\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/\",\"url\":\"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/\",\"name\":\"[:pt]Stored Procedures (Procedimentos Armazenados).[:en]Stored Procedures (Procedimentos Armazenados).[:] - Elipse Knowledgebase\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#website\"},\"datePublished\":\"2019-03-25T20:30:13+00:00\",\"dateModified\":\"2024-03-28T19:35:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/kb.elipse.com.br\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Stored Procedures (Procedimentos Armazenados).\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kb.elipse.com.br\/#website\",\"url\":\"https:\/\/kb.elipse.com.br\/\",\"name\":\"Elipse Knowledgebase\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kb.elipse.com.br\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\",\"name\":\"Elipse Software\",\"url\":\"https:\/\/kb.elipse.com.br\/\",\"sameAs\":[\"http:\/\/www.facebook.com\/elipsesoftware\"],\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png\",\"contentUrl\":\"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png\",\"width\":161,\"height\":58,\"caption\":\"Elipse Software\"},\"image\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87\",\"name\":\"Elipse Software\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g\",\"caption\":\"Elipse Software\"},\"url\":\"https:\/\/kb.elipse.com.br\/en\/author\/webmasterelipse-com-br\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Stored Procedures (Procedimentos Armazenados). - Elipse Knowledgebase","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/","og_locale":"en_US","og_type":"article","og_title":"[:pt]Stored Procedures (Procedimentos Armazenados).[:en]Stored Procedures (Procedimentos Armazenados).[:] - Elipse Knowledgebase","og_description":"[:pt]Embora o Elipse E3 j\u00e1 possua objetos que facilitam a manipula\u00e7\u00e3o de registros do banco de dados\u00a0 (como a Consulta), \u00e9 poss\u00edvel melhorar seu desempenho... Autor Renato Souza[:en]Embora o Elipse E3 j\u00e1 possua objetos que facilitam a manipula\u00e7\u00e3o de registros do banco de dados\u00a0 (como a Consulta), \u00e9 poss\u00edvel melhorar seu desempenho... Autor Renato Souza[:]","og_url":"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/","og_site_name":"Elipse Knowledgebase","article_publisher":"http:\/\/www.facebook.com\/elipsesoftware","article_published_time":"2019-03-25T20:30:13+00:00","article_modified_time":"2024-03-28T19:35:57+00:00","og_image":[{"url":"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID37\/Figura1.PNG"}],"author":"Elipse Software","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Elipse Software","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/#article","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/"},"author":{"name":"Elipse Software","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87"},"headline":"Stored Procedures (Procedimentos Armazenados).","datePublished":"2019-03-25T20:30:13+00:00","dateModified":"2024-03-28T19:35:57+00:00","mainEntityOfPage":{"@id":"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/"},"wordCount":2723,"commentCount":0,"publisher":{"@id":"https:\/\/kb.elipse.com.br\/#organization"},"articleSection":["DataBases"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/","url":"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/","name":"[:pt]Stored Procedures (Procedimentos Armazenados).[:en]Stored Procedures (Procedimentos Armazenados).[:] - Elipse Knowledgebase","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/#website"},"datePublished":"2019-03-25T20:30:13+00:00","dateModified":"2024-03-28T19:35:57+00:00","breadcrumb":{"@id":"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/kb.elipse.com.br\/stored-procedures-procedimentos-armazenados\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/kb.elipse.com.br\/en\/"},{"@type":"ListItem","position":2,"name":"Stored Procedures (Procedimentos Armazenados)."}]},{"@type":"WebSite","@id":"https:\/\/kb.elipse.com.br\/#website","url":"https:\/\/kb.elipse.com.br\/","name":"Elipse Knowledgebase","description":"","publisher":{"@id":"https:\/\/kb.elipse.com.br\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kb.elipse.com.br\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/kb.elipse.com.br\/#organization","name":"Elipse Software","url":"https:\/\/kb.elipse.com.br\/","sameAs":["http:\/\/www.facebook.com\/elipsesoftware"],"logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/","url":"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png","contentUrl":"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png","width":161,"height":58,"caption":"Elipse Software"},"image":{"@id":"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/def69ea453ea60b250497b89225a9f87","name":"Elipse Software","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ff1f7ec38f4687b06f6851d97b3cd2d0?s=96&d=mm&r=g","caption":"Elipse Software"},"url":"https:\/\/kb.elipse.com.br\/en\/author\/webmasterelipse-com-br\/"}]}},"_links":{"self":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/307"}],"collection":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/comments?post=307"}],"version-history":[{"count":7,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/307\/revisions"}],"predecessor-version":[{"id":16204,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/307\/revisions\/16204"}],"wp:attachment":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/media?parent=307"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/categories?post=307"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/tags?post=307"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}