.dsy:it. Pages (3): « 1 [2] 3 »
Show 150 posts per page

.dsy:it. (http://www.dsy.it/forum/)
- Basi di dati ~ comunicazione digitale (http://www.dsy.it/forum/forumdisplay.php?forumid=108)
-- progetto frequentanti di laboratorio (http://www.dsy.it/forum/showthread.php?threadid=34732)


Posted by il_gege on 12-05-2008 19:08:

Mmm
Ok...quindi per gli "storici" si usa questa no?

__________________
Kantina27 - Punk Rock
MySpace Profile


Posted by stell4r on 13-05-2008 00:16:

storici? :|


Posted by il_gege on 13-05-2008 08:20:

eh, per tenere memoria, tipo in questo caso dei menù utilizzati..blablabla

__________________
Kantina27 - Punk Rock
MySpace Profile


Posted by il_gege on 14-05-2008 08:30:

UP.

A proposito, non è che qualcuno riesce a farmi un esempio di trigger e di check?

Intendo la forma di come scriverli..

__________________
Kantina27 - Punk Rock
MySpace Profile


Posted by ARIEL on 14-05-2008 08:49:

Allora vincolo di check:

CREATE TABLE Professori
( id Numeric (5) PRIMARY KEY,
cognome varchar (20) NOT NULL,
nome varchar (20) NOT NULL,
stipendio default 15000
CONSTRAINT positivo CHECK (stipendio >=0);

La parte che vedi in grassetto è il check: positivo è il nome che dai al vincolo di Check mentre stipendio >=0 è la condizione.

Per il trigger la questione è un po' più complicata, proverò a farti un esempio:
mettiamo che io abbia una tabella che mi serve per tenere traccia di ex lavoratori così definita:
CREATE TABLE ex_lavoratore(
CodDip......
nome....
cognome....
ruolo....
nomeR....
locazioneP....
dataF....);

Devo scrivere ora la funzione del trigger:

CREATE FUNCTION archivia_lavoratore() returns trigger as'
BEGIN
INSERT INTO ex_lavoratore (CodDip, nome, cognome, ruolo, nomeR, locazioneP, dataF)
VALUES (old.CodDip, old.nome, old.cognome, old.ruolo, old.nomeR, old.locazioneP, current_date);
RAISE NOTICE "lavoratore archiviato";
RETURN null;
END;
'language 'plpgsql';

Ora crei il trigger:
CREATE TRIGGER cancella_lavoratore
AFTER DELETE on Lavorano
FOR EACH ROW EXECUTE PROCEDURE archivia_lavoratore();

Non so se è molto chiaro -.-'


Posted by il_gege on 14-05-2008 10:35:

Ok Ariel, grazie.

Però forse ho chiesto male io. Hai presente che nella documentazione c'è da inserire i check e i trigger?

Ok, dato che c'è scritto molto chiaramente che non vogliono i comandi SQL, io devo scrivere per esempio, nel caso dei check:

code:
- Si controlli che lo stipendio sia maggiore o uguale a zero


E per i trigger
code:
- Ogni volta che si viene cancellato un lavoratore, esso si archivia tramite funzione


Cose di sto genere bisogna fare?

__________________
Kantina27 - Punk Rock
MySpace Profile


Posted by stell4r on 14-05-2008 10:49:

si gege... tu espliciti i vincoli e poi tra parentesi ci metti che tipo di vincolo credi che possa essere. Anche se è sbagliato poi te lo dirà il prof. ;)

cmq .. io non ho usato come entità debole quello che dici te .. l'ho usata per giorno!


Posted by ARIEL on 14-05-2008 10:50:

Per ora nella documentazione devi scrivere come implementi i vincoli de tipo:

V1: ...... check su colonna
v2: ...... trigger
V3: ..... asserzione

Devi solo indicare con cosa li implementerai!


Posted by il_gege on 14-05-2008 10:57:

Originally posted by stell4r
si gege... tu espliciti i vincoli e poi tra parentesi ci metti che tipo di vincolo credi che possa essere. Anche se è sbagliato poi te lo dirà il prof. ;)

cmq .. io non ho usato come entità debole quello che dici te .. l'ho usata per giorno!


Si effettivamente dopo un paio di ragionamenti l'ho fatto anche io per giorno...

Comunque chech e trigger gli avevo suddivisi, a sto punto gli rifaccio bene come mi avete spiegato voi.

Grazie ad entrambi.

__________________
Kantina27 - Punk Rock
MySpace Profile


Posted by aa677592 on 16-05-2008 18:44:

Question E-R Catering

Volevo chiedere una info sullo schema E-R per i frequentanti.
Noi abbiamo collegato evento a menu e succesivamente menu con piatto ecc. Però per tener traccia della quantità dei menu serviti nello stesso giorno dovremmo creare un' altra entità e collegarla con menù ed evento, oppure va bene anche creare solamente un'altra relazione tra menù ed evento? (ammesso che sia possibile farlo..)
Oggi a lezione il prof sembrava un libro di indovinelli in quanto a consigli :shock:


Posted by el-mundo on 16-05-2008 18:54:

Originally posted by stell4r
potresti mettere un'unica gerarchia con meeting dato che cerimonie non ti interessa!


ma DEVI mettere una sola figlia, cioè meeting/congressi.
Cerimonie è inutile, ha tutti li attributi che sono già nel'entità padre


Posted by el-mundo on 16-05-2008 19:02:

Originally posted by ARIEL
Per ora nella documentazione devi scrivere come implementi i vincoli de tipo:

V1: ...... check su colonna
v2: ...... trigger
V3: ..... asserzione

Devi solo indicare con cosa li implementerai!


anche io ero curioso su come va fatta questa parte.
Ditemi se ho capito bene.
Non devo scrivere codice(verrà scritto nella seconda parte) ma devo solo scrivere i vincoli e poi se questi vincoli vengono implementati con Check o con Assertion, esatto?
I Trigger...non ho capito bene.
Il prof cmq oggi ha detto che più avanti verranno spiegati.
Più avanti però...se continuiamo a fare interrogazioni SQL in classe e sul progetto lui dice un pò le cose a metà....e martedì non ce lezione,....sti triggere quando li facciamo?

Ma poi...la consegna è da fare entro martedì, martedi compreso?


Posted by ARIEL on 16-05-2008 19:09:

Allora la consegna si farà martedì 20 a lezione consegnando la documentazione al prof.
Ovviamente le esercitazioni sono in ordine di difficoltà, se non si sa fare l'sql e il resto non è che si può passare subito ai trigger. Cmq per adesso il prof vuole sapere solo come abbiamo intenzione di implementare i vincoli (non è neanche detto che devi usare i trigger) studiati bene i check e le assertion. Se poi sbaglierai il prof ti correggerà tranquillamente.


Posted by aa677592 on 16-05-2008 19:19:

Nessuno ha delle possibili soluzioni da darmi?????


Posted by sg693322 on 16-05-2008 21:35:

Originally posted by ARIEL
Allora la consegna si farà martedì 20 a lezione consegnando la documentazione al prof.

a lezione? ma non andava sottoposta sul sito nell'apposita sezione?

__________________
Serena...
Cerchiamo di vivere bene a tal punto che quando moriremo anche il becchino sia triste...


All times are GMT. The time now is 08:09. Pages (3): « 1 [2] 3 »
Show all 41 posts from this thread on one page

Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.