Queer European MD passionate about IT
Explorar o código

Getting ready for seconds assignment

Davte %!s(int64=4) %!d(string=hai) anos
pai
achega
44463094f7

+ 2 - 2
compitino/main.tex

@@ -29,8 +29,8 @@ top=30mm,
 \selectlanguage{italian}
 
 \setcounter{section}{-1}
-\newcommand{\folder}{primo_compitino}
-%\newcommand{\folder}{secondo_compitino}
+%\newcommand{\folder}{primo_compitino}
+\newcommand{\folder}{secondo_compitino}
 
 
 % First page information

+ 5 - 0
compitino/secondo_compitino/dominio.tex

@@ -0,0 +1,5 @@
+% !TEX root = ../main.tex
+
+Descrizione del dominio.
+
+Nominare le classi di interesse, specificarne gli attributi e indicarne le relazioni con le altre classi.

+ 51 - 0
compitino/secondo_compitino/piani_di_accesso.tex

@@ -0,0 +1,51 @@
+% !TEX root = ../main.tex
+\subsection{Query a}
+
+\paragraph{Piano di accesso logico della query a}
+\begin{center}
+  \begin{forest}
+      [{$\pi^{b}$ R.C, S.D}
+          [{$\bowtie$ R.E = S.F}
+              [{$\sigma$ C $>=$ 10}
+                  [Tabella1 R]
+              ]
+              [Tabella2 S]
+          ]
+      ]
+  \end{forest}
+\end{center}
+
+\paragraph{Piano di accesso fisico della query a senza indici}
+\begin{center}
+  \begin{forest}
+      [{Project(\{C, D\})}
+          [{SortMerge(R.E = S.F)}
+              [{Sort(\{E\})}
+                  [{Project(\{E, C\})}
+                    [{Filter(C $>=$ 10)}
+                      [{TableScan(Tabella R)}]
+                    ]
+                  ]
+              ]
+              [{Sort(\{F\})}
+                [{Project(\{C, F\})}
+                  [{TableScan(Tabella S)}]
+                ]
+              ]
+          ]
+      ]
+  \end{forest}
+\end{center}
+
+\paragraph{Piano di accesso fisico della query a con due indici}
+\begin{center}
+  \begin{forest}, baseline, qtree
+      [{Project(\{C, D\})}
+          [{IndexNestedLoop(R.E = S.F)}
+              [{IndexFilter(Tabella R,\\ IndRC, C $>=$ 10)}]
+              [{IndexFilter(Tabella S,\\IndSF, S.F = R.E)}]
+          ]
+      ]
+  \end{forest}
+\end{center}
+Indici necessari: \texttt{IndRC} (indice della tabella R sull’attributo C) e \texttt{IndSF} (indice della tabella S sull'attributo F).

+ 14 - 0
compitino/secondo_compitino/queries.tex

@@ -0,0 +1,14 @@
+% !TEX root = ../main.tex
+
+\begin{enumerate}[label=\alph*.]
+    \item Uso di proiezione, join e restrizione
+
+    Per ogni record di R con valore di C maggiore o uguale a 10 e che ha un valore di E uguale a un valore di F nella tabella S, riportare R.C e S.D.
+\begin{lstlisting}[style=SQLu]
+SELECT R.C, S.D
+FROM Tabella1 R
+JOIN Tabella2 S ON R.E = S.F
+WHERE R.C >= 10
+\end{lstlisting}
+\end{enumerate}
+\clearpage

BIN=BIN
compitino/secondo_compitino/schema_concettuale.pdf


+ 3 - 0
compitino/secondo_compitino/schema_concettuale.tex

@@ -0,0 +1,3 @@
+% !TEX root = ../main.tex
+
+Vincoli non catturato graficamente: \textellipsis

BIN=BIN
compitino/secondo_compitino/schema_logico.pdf


+ 21 - 0
compitino/secondo_compitino/schema_logico.tex

@@ -0,0 +1,21 @@
+% !TEX root = ../main.tex
+
+\textbf{Schema logico relazionale in formato testuale}
+\begin{lstlisting}[style=SQLu,escapechar=@]
+Tabella(@\underline{ChiavePrimaria}@, B, C, D)
+AltraTabella(@\underline{ChiavePrimariaEdEsterna*}@, E)
+@\textellipsis@
+\end{lstlisting}
+
+\paragraph{Dipendenze funzionali}
+\begin{itemize}
+\item Per ogni tabella la chiave primaria (sottolineata) determina ciascuno degli attributi della tabella
+\item Altre eventuali dipendenze
+\end{itemize}
+
+
+Uno schema R, avente insieme di attributi T e insieme di dipendenze funzionali F, (\lstinline{R<T, F>}) è
+in forma normale di Boyce-Codd (BCNF) se ogni dipendenza funzionale della chiusura di F o è
+banale o ha come determinante una superchiave di T.
+Esiste un teorema che semplifica il calcolo, asserendo che se la condizione di cui sopra vale per
+una qualsiasi copertura di F allora vale per l’intera chiusura di F.

+ 3 - 0
compitino/secondo_compitino/testo.tex

@@ -0,0 +1,3 @@
+% !TEX root = ../main.tex
+
+Il testo viene assegnato dal Professore.