Tables
1. Définition
Comme expliqué dans l’introduction, chaque table est définie par une classe qui étend la classe Table[T] où T est un tuple contenant autant d’éléments que de colonnes dans la table. Base de données:table
Cette table prend comme arguments un tag et un nom de table. C’est pour cela que la classe qui étend la classe Table[T] prend comme argument un tag et définit un nom de table.
Prenons comme exemple une table UTILISATEURS qui définit les colonnes suivantes :
-
id : la clé primaire de type Int qui est auto-incrémentée. Base de données:clé primaire
-
nom : le nom de l’utilisateur d’une taille maximale de 20 caractères.
-
prenom : le prénom optionnel de l’utilisateur.
-
age : l’âge de l’utilisateur dont la valeur est par défaut 18.
-
email : l’email de l’utilisateur dont la valeur est unique dans cette table.
Cette table étend donc le type Table[(Int, String, Option[String], Int, String)].
class Utilisateurs(tag: Tag) extends Table[(Int, String,
Option[String], Int, String)](tag, "UTILISATEURS") { ... }
Dans la classe qui définit la table, on définit les colonnes de cette dernière grâce à la méthode column[T] où T correspond au type de donnée souhaité dans la colonne. Les types suivants sont supportés par défaut :
-
Les types numériques :...