28/77
\begin{frame}
  \frametitle{Null Values: Advantages}
  
  \begin{goal}{}
    Without null values, it would be necessary to
    \textbf{split a relation} into many, more specific relations (``subclasses'').
  \end{goal}
  
  \begin{exampleblock}{Example}
    \begin{center}
      \sql{Students\_with\_address}, \quad \sql{Students\_without\_address}
    \end{center}
  \end{exampleblock}
  
  \begin{exampleblock}{Alternatively: introduce an additional relation with schema}
    \vspace{0.5ex}
    \begin{center}
      \sql{Students\_Address(sid, address)}
    \end{center}
    \vspace{-1ex}
    But this complicates queries: \remark{join operations are needed (upcoming).}
  \end{exampleblock}
   \medskip
  
  \pause
  \begin{alertblock}{}
  If null values are not allowed
  \begin{itemize}
    \item \emph{users} might invent \textbf{fake values} to fill the missing columns
  \end{itemize} 
  \end{alertblock}
  \smallskip
  \begin{quiz}{\textwidth}{Fake values}
    Why are fake values a bad idea in database design?
  \end{quiz}
  \vspace{10cm}
\end{frame}