\begin{frame} \frametitle{Data Types and Domains} \begin{block}{} Table entries are \textbf{values} that conform to some \textbf{data type}. \end{block} \pause \begin{exampleblock}{Examples of SQL data types} \begin{itemize} \item \emph{strings}, e.g. \begin{itemize} \item \sql{varchar(n)} - strings of up to $n$ characters ({\footnotesize $n \le 65535$}) \item \sql{(long)text} - strings up to 4GB \end{itemize} \item \emph{numbers}, e.g. \begin{itemize} \item \sql{bit}, \sql{int}, \sql{float}, \ldots \item \sql{numeric(p,s)} - decimal number \, \begin{tikzpicture}[thick,inner sep=.5mm,baseline=-2mm] \draw (0,0) to ++(0,-2mm) to node [above] {{\footnotesize $p-s$ digits}} ++(20mm,0mm) to ++(0,2mm); \node at (21mm,-2mm) {$.$}; \draw (22mm,0) to ++(0,-2mm) to node [above] {{\footnotesize $s$ digits}} ++(15mm,0mm) to ++(0,2mm); \end{tikzpicture} \end{itemize} \item \emph{binary data}, e.g. \sql{blob} \item \emph{date and time}, e.g. \sql{date}, \sql{time}, \sql{datetime}, \sql{timestamp} \ldots \end{itemize} \end{exampleblock} Available data types depend on the database management system, and the supported version of the SQL standard. \end{frame}