Update README.md

This commit is contained in:
Tanci 2024-08-01 01:59:17 -03:00 committed by GitHub
parent 3fe19712ea
commit a8242686b5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

142
README.md
View File

@ -145,80 +145,80 @@ Antes de iniciar, certifique-se de que você já tem instalado:
5. **Criação das Funções de Replicação, Exclusão e Atualização**
***Cria na raiz do banco de dados***
**Função para replicar inserções:**
```sql
CREATE OR REPLACE FUNCTION replicate_labels_to_tags()
RETURNS TRIGGER AS $$
BEGIN
INSERT INTO tags (id, name)
VALUES (NEW.id, NEW.title);
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
```
**Função para replicar exclusões:**
```sql
CREATE OR REPLACE FUNCTION delete_labels_from_tags_and_taggings()
RETURNS TRIGGER AS $$
BEGIN
-- Exclui da tabela tags
DELETE FROM tags WHERE id = OLD.id;
-- Exclui da tabela taggings
DELETE FROM taggings WHERE tag_id = OLD.id;
RETURN OLD;
END;
$$ LANGUAGE plpgsql;
```
**Função para replicar atualizações:**
```sql
CREATE OR REPLACE FUNCTION update_labels_to_tags()
RETURNS TRIGGER AS $$
BEGIN
UPDATE tags
SET name = NEW.title
WHERE id = NEW.id;
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
```
***Cria na raiz do banco de dados***
**Função para replicar inserções:**
```sql
CREATE OR REPLACE FUNCTION replicate_labels_to_tags()
RETURNS TRIGGER AS $$
BEGIN
INSERT INTO tags (id, name)
VALUES (NEW.id, NEW.title);
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
```
**Função para replicar exclusões:**
```sql
CREATE OR REPLACE FUNCTION delete_labels_from_tags_and_taggings()
RETURNS TRIGGER AS $$
BEGIN
-- Exclui da tabela tags
DELETE FROM tags WHERE id = OLD.id;
-- Exclui da tabela taggings
DELETE FROM taggings WHERE tag_id = OLD.id;
RETURN OLD;
END;
$$ LANGUAGE plpgsql;
```
**Função para replicar atualizações:**
```sql
CREATE OR REPLACE FUNCTION update_labels_to_tags()
RETURNS TRIGGER AS $$
BEGIN
UPDATE tags
SET name = NEW.title
WHERE id = NEW.id;
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
```
6. **Criação dos Triggers**
***Criar na tabela labels***
**Trigger para inserções:**
```sql
CREATE TRIGGER after_insert_labels
AFTER INSERT ON labels
FOR EACH ROW
EXECUTE FUNCTION replicate_labels_to_tags();
```
**Trigger para exclusões:**
```sql
CREATE TRIGGER after_delete_labels
AFTER DELETE ON labels
FOR EACH ROW
EXECUTE FUNCTION delete_labels_from_tags_and_taggings();
```
**Trigger para atualizações:**
```sql
CREATE TRIGGER after_update_labels
AFTER UPDATE ON labels
FOR EACH ROW
EXECUTE FUNCTION update_labels_to_tags();
```
***Criar na tabela labels***
**Trigger para inserções:**
```sql
CREATE TRIGGER after_insert_labels
AFTER INSERT ON labels
FOR EACH ROW
EXECUTE FUNCTION replicate_labels_to_tags();
```
**Trigger para exclusões:**
```sql
CREATE TRIGGER after_delete_labels
AFTER DELETE ON labels
FOR EACH ROW
EXECUTE FUNCTION delete_labels_from_tags_and_taggings();
```
**Trigger para atualizações:**
```sql
CREATE TRIGGER after_update_labels
AFTER UPDATE ON labels
FOR EACH ROW
EXECUTE FUNCTION update_labels_to_tags();
```
---