{"id":3309,"date":"2019-03-25T17:43:41","date_gmt":"2019-03-25T20:43:41","guid":{"rendered":"http:\/\/xexeu.elipse.com.br\/pt\/linguagem-sql-capitulo-8-triggers\/"},"modified":"2019-05-27T14:44:41","modified_gmt":"2019-05-27T17:44:41","slug":"linguagem-sql-capitulo-8-triggers","status":"publish","type":"post","link":"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/","title":{"rendered":"Linguagem SQL: Cap\u00edtulo 8 &#8211; Triggers."},"content":{"rendered":"<div align=\"justify\">\n<p>O <b>trigger <\/b>(gatilho) \u00e9 um tipo de procedimento armazenado especial, que ser\u00e1 executado sempre que houver uma tentativa de modifica\u00e7\u00e3o dos dados de uma tabela protegida por ele. Os gatilhos DML (Data Manipulation Language &#8211; INSERT, UPDATE, DELETE) podem ser usados para impor regras, verificar a integridade de dados, consultar outras tabelas e incluir instru\u00e7\u00f5es Transact-SQL complexas.<\/p>\n<p>O trigger ser\u00e1 chamado automaticamente sempre que houver uma tentativa de inserir, atualizar ou excluir dados de uma tabela, n\u00e3o podendo nunca ser ignorado.\u00a0 Ao contr\u00e1rio dos procedimentos armazenados (stored procedures), os triggers n\u00e3o podem ser executados diretamente e n\u00e3o enviam nem recebem par\u00e2metros.<\/p>\n<p>Um trigger pode conter uma instru\u00e7\u00e3o ROLLBACK TRANSACTION, mesmo que n\u00e3o exista uma instru\u00e7\u00e3o expl\u00edcita de BEGIN TRANSACTION; neste caso, toda a transa\u00e7\u00e3o (o trigger e a instru\u00e7\u00e3o que o disparou) ser\u00e1 revertida ou desfeita.<\/p>\n<p>Os triggers sempre ser\u00e3o executados ap\u00f3s a utiliza\u00e7\u00e3o de comando INSERT, UPDATE ou DELETE. Neste artigo, veremos um exemplo do trigger INSERT.<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID4996\/1.png\" alt=\"\" width=\"266\" height=\"139\" align=\"Baseline\" border=\"0\" \/><\/div>\n<p><b>Trigger INSERT<\/b><\/p>\n<p>Um trigger INSERT pode enviar mensagens de erro ou sucesso, ou ainda executar determinadas fun\u00e7\u00f5es, de acordo com as transa\u00e7\u00f5es criadas. Essas a\u00e7\u00f5es podem ser definidas em um trigger atrav\u00e9s de condicionais IF, sendo assim poss\u00edvel verificar se a opera\u00e7\u00e3o foi executada com sucesso. No exemplo, ser\u00e1 criada uma tabela chamada <b>tbl_teste<\/b>, onde ser\u00e1 simulado um cadastro de usu\u00e1rios. A cada inser\u00e7\u00e3o de novo usu\u00e1rio, ser\u00e1 escrita uma mensagem de confirma\u00e7\u00e3o e a hora e data que o registro atual foi inserido, confirmando o sucesso ou n\u00e3o da opera\u00e7\u00e3o.<\/p>\n<p>Instru\u00e7\u00f5es de triggers DML tamb\u00e9m podem utilizar duas tabelas especiais: a tabela <b>Deleted <\/b>e a tabela <b>Inserted<\/b>. O pr\u00f3prio SQL Server \u00e9 repons\u00e1vel por criar e gerenciar automaticamente essas tabelas, sendo poss\u00edvel us\u00e1-las para testar os efeitos de algumas modifica\u00e7\u00f5es de dados. A tabela <b>Inserted <\/b>armazena c\u00f3pias das linhas afetadas durante as instru\u00e7\u00f5es INSERT e UPDATE. Durante uma transa\u00e7\u00e3o de inser\u00e7\u00e3o ou atualiza\u00e7\u00e3o, novas linhas s\u00e3o adicionadas \u00e0 tabela <b>Inserted<\/b>.<\/p>\n<p><b>Cria\u00e7\u00e3o das tabelas:<\/b><\/p>\n<div align=\"left\"><span style=\"font-family: Courier New;\"><span style=\"color: #0000ff;\">CREATE TABLE<\/span> <span style=\"color: #339966;\">tbl_teste<\/span><\/span><br \/>\n<span style=\"font-family: Courier New;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 (<\/span><br \/>\n<span style=\"font-family: Courier New;\"><span style=\"color: #339966;\">user_cpf<\/span> int not null <span style=\"color: #0000ff;\">primary key<\/span>,<\/span><br \/>\n<span style=\"font-family: Courier New;\"><span style=\"color: #339966;\">user_name<\/span> <span style=\"color: #0000ff;\">varchar<\/span>(128) not null,<\/span><br \/>\n<span style=\"font-family: Courier New;\"><span style=\"color: #339966;\">user_email<\/span> <span style=\"color: #0000ff;\">varchar<\/span>(128) not null<\/span><br \/>\n<span style=\"font-family: Courier New;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 )<\/span><br \/>\n<span style=\"color: #0000ff; font-family: Courier New;\">GO<\/span><span style=\"font-family: Courier New;\"><span style=\"color: #0000ff;\">CREATE TABLE<\/span> <span style=\"color: #339966;\">Status_tbl<\/span><\/span><br \/>\n<span style=\"font-family: Courier New;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 (<\/span><br \/>\n<span style=\"font-family: Courier New;\"><span style=\"color: #339966;\">Field1 <\/span><span style=\"color: #0000ff;\">varchar<\/span>(128) not null,<\/span><br \/>\n<span style=\"font-family: Courier New;\"><span style=\"color: #339966;\">Date_Time<\/span> <span style=\"color: #0000ff;\">datetime<\/span><\/span><br \/>\n<span style=\"font-family: Courier New;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 )<\/span><br \/>\n<span style=\"color: #0000ff; font-family: Courier New;\">GO<\/span><\/div>\n<p><b>Cria\u00e7\u00e3o do trigger:<\/b><\/p>\n<p><span style=\"font-family: Courier New;\"><span style=\"color: #0000ff;\">CREATE TRIGGER<\/span> <span style=\"color: #339966;\">onInsertValue <\/span><span style=\"color: #0000ff;\">ON<\/span> <span style=\"color: #339966;\">tbl_teste<\/span><br \/>\n<span style=\"color: #0000ff;\">\u00a0FOR INSERT AS<\/span><br \/>\n<span style=\"color: #0000ff;\">IF <\/span>(<span style=\"color: #0000ff;\">SELECT <\/span>COUNT(*) <span style=\"color: #0000ff;\">FROM <\/span><span style=\"color: #339966;\">INSERTED<\/span>) = 1<br \/>\n<span style=\"color: #0000ff;\">INSERT INTO<\/span> <span style=\"color: #339966;\">Status_tbl<\/span><br \/>\n(<br \/>\n<span style=\"color: #339966;\">Field1,<br \/>\nDate_Time<\/span><br \/>\n)<br \/>\n<span style=\"color: #0000ff;\">VALUES<\/span><br \/>\n(<span style=\"color: #ff0000;\">&#8216;Record inserted successfully&#8217;<\/span>, <span style=\"color: #ff00ff;\">CURRENT_TIMESTAMP<\/span>)<br \/>\n<span style=\"color: #0000ff;\">GO<\/span><\/span><\/p>\n<p>A cada registro inserido com sucesso, o SGBD realizar\u00e1 a escrita em uma tabela auxiliar chamada <b>Status_tbl<\/b>. A partir desta tabela auxiliar, pode-se tratar os registros no E3, confirmando se os valores foram realmente inseridos na tabela principal.<\/p>\n<p><b>Inserindo valores na tabela a partir do SQL Management Studio:<\/b><\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID4996\/2.png\" alt=\"\" width=\"268\" height=\"259\" align=\"Baseline\" border=\"0\" \/><\/div>\n<p>Para verificar se o INSERT foi realizado no banco de dados, \u00e9 poss\u00edvel criar uma consulta no E3 que retorne o \u00faltimo registro inserido na tabela <b>Status_tbl<\/b>. A sintaxe da consulta deve ser a seguinte:<\/p>\n<div align=\"left\"><b><span style=\"font-family: Courier New;\">SELECT Top 1 Status_tbl.Field1,Status_tbl.Date_Time <\/span><br \/>\n<span style=\"font-family: Courier New;\">FROM Status_tbl<\/span><br \/>\n<span style=\"font-family: Courier New;\">ORDER BY Status_tbl.Date_TimeDESC<\/span><\/b><\/div>\n<p>A cada escrita realizada com sucesso na tabela (atrav\u00e9s do m\u00e9todo <i>WriteRecord <\/i>do hist\u00f3rico ou do comando <i>Insert Into<\/i>), ser\u00e3o retornados os campos da tabela <b>Status_tbl<\/b> com uma mensagem e hor\u00e1rio do \u00faltimo INSERT, conforme definido no trigger:<\/p>\n<div align=\"center\"><img loading=\"lazy\" title=\"\" src=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID4996\/3.png\" alt=\"\" width=\"392\" height=\"60\" align=\"Baseline\" border=\"0\" \/><\/div>\n<p>O banco de dados utilizado neste artigo foi o Microsoft SQL Server 2012.<\/p>\n<\/div>\n<h3>Artigos Relacionados<\/h3>\n<hr \/>\n<ul>\n<li><a href=\"http:\/\/kb.elipse.com.br\/pt-br\/questions\/4988\/Linguagem+SQL%3A+Introdu%C3%A7%C3%A3o.\">Linguagem SQL: Introdu\u00e7\u00e3o.<\/a><\/li>\n<li><a href=\"http:\/\/kb.elipse.com.br\/pt-br\/questions\/4989\/Linguagem+SQL%3A+Cap%C3%ADtulo+1+-+Tipos+de+Manipula%C3%A7%C3%A3o+de+Informa%C3%A7%C3%B5es+no+BD.\">Linguagem SQL: Cap\u00edtulo 1 &#8211; Tipos de Manipula\u00e7\u00e3o de Informa\u00e7\u00f5es no BD.<\/a><\/li>\n<li><a href=\"http:\/\/kb.elipse.com.br\/pt-br\/questions\/4990\/Linguagem+SQL%3A+Cap%C3%ADtulo+2+-+Arquivos+e+Logs+do+Banco+de+Dados+SQL+Server.\">Linguagem SQL: Cap\u00edtulo 2 &#8211; Arquivos e Logs do Banco de Dados SQL Server.<\/a><\/li>\n<li><a href=\"http:\/\/kb.elipse.com.br\/pt-br\/questions\/4991\/Linguagem+SQL%3A+Cap%C3%ADtulo+3+-+Descarte+de+Dados+e+Limite+dos+Bancos.\">Linguagem SQL: Cap\u00edtulo 3 &#8211; Descarte de Dados e Limite dos Bancos.<\/a><\/li>\n<li><a href=\"http:\/\/kb.elipse.com.br\/pt-br\/questions\/4992\/Linguagem+SQL%3A+Cap%C3%ADtulo+4+-+Backup.\">Linguagem SQL: Cap\u00edtulo 4 &#8211; Backup.<\/a><\/li>\n<li><a href=\"http:\/\/kb.elipse.com.br\/pt-br\/questions\/4993\/Linguagem+SQL%3A+Cap%C3%ADtulo+5+-+Boas+pr%C3%A1ticas+de+configura%C3%A7%C3%A3o+de+um+Hist%C3%B3rico+e+uma+Consulta.\">Linguagem SQL: Cap\u00edtulo 5 &#8211; Boas pr\u00e1ticas de configura\u00e7\u00e3o de um Hist\u00f3rico e uma Consulta.<\/a><\/li>\n<li><a href=\"http:\/\/kb.elipse.com.br\/pt-br\/questions\/4994\/Linguagem+SQL%3A+Cap%C3%ADtulo+6+-+Comandos+SQL.\">Linguagem SQL: Cap\u00edtulo 6 &#8211; Comandos SQL.<\/a><\/li>\n<li><a href=\"http:\/\/kb.elipse.com.br\/pt-br\/questions\/4995\/Linguagem+SQL%3A+Cap%C3%ADtulo+7+-+Views.\">Linguagem SQL: Cap\u00edtulo 7 &#8211; Views.<\/a><\/li>\n<li><a href=\"http:\/\/kb.elipse.com.br\/pt-br\/questions\/4997\/Linguagem+SQL%3A+Cap%C3%ADtulo+9+-+Stored+Procedures.\">Linguagem SQL: Cap\u00edtulo 9 &#8211; Stored Procedures.<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>O trigger (gatilho) \u00e9 um tipo de procedimento armazenado especial, que ser\u00e1 executado sempre que houver uma tentativa de modifica\u00e7\u00e3o dos dados de uma tabela protegida por ele. Os gatilhos&hellip;<\/p>\n","protected":false},"author":3,"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>Linguagem SQL: Cap\u00edtulo 8 - Triggers.[:] - 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\/en\/linguagem-sql-capitulo-8-triggers\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Linguagem SQL: Cap\u00edtulo 8 - Triggers.\" \/>\n<meta property=\"og:description\" content=\"O trigger (gatilho) \u00e9 um tipo de procedimento armazenado especial, que ser\u00e1 executado sempre que houver uma tentativa de modifica\u00e7\u00e3o dos dados de uma tabela protegida por ele. Os gatilhos&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/\" \/>\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:43:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-05-27T17:44:41+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID4996\/1.png\" \/>\n<meta name=\"author\" content=\"D\u00e9lio Damin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"D\u00e9lio Damin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/\"},\"author\":{\"name\":\"D\u00e9lio Damin\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/be597eff34b5f24af940a55332870778\"},\"headline\":\"Linguagem SQL: Cap\u00edtulo 8 &#8211; Triggers.\",\"datePublished\":\"2019-03-25T20:43:41+00:00\",\"dateModified\":\"2019-05-27T17:44:41+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/\"},\"wordCount\":684,\"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\/en\/linguagem-sql-capitulo-8-triggers\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/\",\"url\":\"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/\",\"name\":\"[:pt]Linguagem SQL: Cap\u00edtulo 8 - Triggers.[:] - Elipse Knowledgebase\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#website\"},\"datePublished\":\"2019-03-25T20:43:41+00:00\",\"dateModified\":\"2019-05-27T17:44:41+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/kb.elipse.com.br\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Linguagem SQL: Cap\u00edtulo 8 &#8211; Triggers.\"}]},{\"@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\/be597eff34b5f24af940a55332870778\",\"name\":\"D\u00e9lio Damin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/fdf251d36430f8dd22144c3f1bc53376?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/fdf251d36430f8dd22144c3f1bc53376?s=96&d=mm&r=g\",\"caption\":\"D\u00e9lio Damin\"},\"url\":\"https:\/\/kb.elipse.com.br\/en\/author\/delio\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Linguagem SQL: Cap\u00edtulo 8 - Triggers.[:] - 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\/en\/linguagem-sql-capitulo-8-triggers\/","og_locale":"en_US","og_type":"article","og_title":"[:pt]Linguagem SQL: Cap\u00edtulo 8 - Triggers.[:] - Elipse Knowledgebase","og_description":"O trigger (gatilho) \u00e9 um tipo de procedimento armazenado especial, que ser\u00e1 executado sempre que houver uma tentativa de modifica\u00e7\u00e3o dos dados de uma tabela protegida por ele. Os gatilhos&hellip;","og_url":"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/","og_site_name":"Elipse Knowledgebase","article_publisher":"http:\/\/www.facebook.com\/elipsesoftware","article_published_time":"2019-03-25T20:43:41+00:00","article_modified_time":"2019-05-27T17:44:41+00:00","og_image":[{"url":"http:\/\/kb.elipse.com.br\/pt-br\/images\/ID4996\/1.png"}],"author":"D\u00e9lio Damin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"D\u00e9lio Damin","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/#article","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/"},"author":{"name":"D\u00e9lio Damin","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/be597eff34b5f24af940a55332870778"},"headline":"Linguagem SQL: Cap\u00edtulo 8 &#8211; Triggers.","datePublished":"2019-03-25T20:43:41+00:00","dateModified":"2019-05-27T17:44:41+00:00","mainEntityOfPage":{"@id":"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/"},"wordCount":684,"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\/en\/linguagem-sql-capitulo-8-triggers\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/","url":"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/","name":"[:pt]Linguagem SQL: Cap\u00edtulo 8 - Triggers.[:] - Elipse Knowledgebase","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/#website"},"datePublished":"2019-03-25T20:43:41+00:00","dateModified":"2019-05-27T17:44:41+00:00","breadcrumb":{"@id":"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/kb.elipse.com.br\/en\/linguagem-sql-capitulo-8-triggers\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/kb.elipse.com.br\/en\/"},{"@type":"ListItem","position":2,"name":"Linguagem SQL: Cap\u00edtulo 8 &#8211; Triggers."}]},{"@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\/be597eff34b5f24af940a55332870778","name":"D\u00e9lio Damin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/fdf251d36430f8dd22144c3f1bc53376?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fdf251d36430f8dd22144c3f1bc53376?s=96&d=mm&r=g","caption":"D\u00e9lio Damin"},"url":"https:\/\/kb.elipse.com.br\/en\/author\/delio\/"}]}},"_links":{"self":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/3309"}],"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\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/comments?post=3309"}],"version-history":[{"count":3,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/3309\/revisions"}],"predecessor-version":[{"id":6617,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/3309\/revisions\/6617"}],"wp:attachment":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/media?parent=3309"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/categories?post=3309"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/tags?post=3309"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}