Bonjour à tous, je sais pas si le titre est le plus explicite qui soit mais bon, je me lance.

Je dois réaliser une application en Qt. Dans cette application j'utilise pour l'instant une BDD Sqlite mais je dois pouvoir gérer par la suite d'autre SGBD (oracle, sql server, postgre...).

Ma base de données doit permettre de stocker différents types d'objets prédéfinit dérivant tous d'un type "DBitem". S'ajoute à cela la possibilité à mon utilisateur de créer de nouveaux types perso dérivant eux aussi de DBitem.

Je me pose des questions sur la meilleurs conception possible à implémenter gérer tout ça.

Le mieux serait t-il de créer une interface pour chaque type de connexions possibles (sqlite, oracle) ? Dans ce cas chaque interface contiendrais toutes les méthodes d'ajout/suppression/update de chaque type de d'objets (mais dans ce cas là je ne vois pas trop comment générer les méthodes pour les types créés par les utilisateurs)

Ou alors est ce possible de tout faire grâce a l'objet DBitem dont tout le monde hérite mais dans ce cas la comment gérer le fait que l'on ne connaisse pas les types d'objet que va céer l'utilisateur.