Tous les téléchargements de Alain Defrance
|
|
La connexion à une base de données avec Qt est relativement aisée, il suffit de voir le code nécessaire pour le faire. Ici, l'exemple se base sur une base de données ODBC mais s'adapte sans souci à tout SGBD.
L'article associé |
|
|
|
|
Après avoir tenté de se connecter à la base de données avec Qt, il serait bien d'en faire quelque chose : premier essai, une requête sans retour de données, plus simple en post-traitement, il ne faut pas traiter de données par après.
L'article associé |
|
|
|
|
L'étape suivante dans les requêtes SQL est évidemment de récupérer des données depuis la base de données, avec un SELECT par exemple.
L'article associé |
|
|
|
|
Les variable bind sont une manière de faire des requêtes préparées, ce qui apporte un gain sécuritaire non négligeable, ainsi que des performances accrues en cas de requêtes souvent exécutées.
L'article associé |
|
|
|
|
Avant toute exploitation de la base de données, il est plus que nécessaire d'y entrer des données. Évidemment, QtSql en est capable.
L'article associé |
|
|
|
|
Qt permet bien évidemment d'interroger une base de données d'une manière un peu plus évoluée grâce aux modèles, qui pourront être utilisés pour afficher d'une manière simple vos données dans un widget graphique.
L'article associé |
|
|
|
|
Cette fonction reçoit en paramètre un chiffre romain et retourne le chiffre arabe correspondant.
Exemple d'utilisation SELECT RomanToArabic('MMCDLI'); Nous obtenons en sortie 2451 |
|
|
|
|
Cette fonction prend en paramètre deux valeurs de type TIMESTAMP et retourne le nombre de secondes entre ces deux valeurs.
Il est possible de passer des valeurs de type DATE et l'ordre n'est pas important. Exemple d'utilisation SELECT seconds_between('2008-11-06 02:10:13', '2008-11-07 02:11:15'); Nous obtenons en sortie 86462 Un peu d'explications Ici nous avons un écart d'un jour, une minute et deux secondes. Un jour = 60 secondes * 60 minutes * 24 heures soit 86400 secondes. Une minute = 60 secondes. Nous obtenons donc 86400 + 60 + 2 soit 86462 secondes. |
|
|
|
|
Cette fonction prend en paramètre deux valeurs de type TIMESTAMP et retourne le nombre de minutes entre ces deux valeurs.
Il est possible de passer des valeurs de type DATE et l'ordre n'est pas important. Attention, cette fonction réutilise la fonction seconds_between, il est donc nécessaire d'avoir créé cette dernière, sans quoi une erreur sera retournée. Si vous préférez créer seulement minutes_between, une version équivalente est disponible. Exemple d'utilisation SELECT minutes_between('2008-11-06 02:10:13', '2008-11-07 02:11:15'); Nous obtenons en sortie 1441 Un peu d'explications Ici nous avons un écart d'un jour, une minute et deux secondes. Un jour = 60 minute ... Voir la suite |
|
|
|
|
Cette fonction ne dépend pas de seconds_between.
Exemple d'utilisation SELECT minutes_between('2008-11-06 02:10:13', '2008-11-07 02:11:15'); Nous obtenons en sortie 1441 |
|
|
|
|
Cette fonction prend en paramètre deux valeurs de type TIMESTAMP et retourne le nombre d'heures entre ces deux valeurs.
Il est possible de passer des valeurs de type DATE et l'ordre n'est pas important. Attention, cette fonction réutilise la fonction minutes_between, il est donc nécessaire d'avoir créé cette dernière sans quoi une erreur sera retournée. Si vous préférez créer seulement hours_between, une version équivalente est disponible. Exemple d'utilisation SELECT hours_between('2008-11-06 02:10:13', '2008-11-08 05:11:15'); Nous obtenons en sortie 51 Un peu d'explications Ici nous avons un écart de deux jours, trois heures, une minute et deux secondes. Deux jour ... Voir la suite |
|
|
|
|
Cette fonction ne dépend pas de minutes_between.
Exemple d'utilisation SELECT hours_between('2008-11-06 02:10:13', '2008-11-08 05:11:15'); Nous obtenons en sortie 51 |
|
|
|
|
Cette fonction prend en paramètre deux valeurs de type DATE et retourne le nombre de jours entre ces deux valeurs.
Il est possible de passer des valeurs de type TIMESTAMP et l'ordre n'est pas important. Exemple d'utilisation SELECT days_between('2008-9-06', '2008-11-08'); Nous obtenons en sortie 63 Un peu d'explications Ici nous voulons calculer le nombre de jours entre le 6 septembre 2008 et le 8 novembre 2008. Nombre de jours en septembre = 30. Nombre de jours en octobre = 31. Nous obtenons donc (30 - 6) + 31 + 8 soit 63 jours. |
|
|
|
|
Cette fonction prend en paramètre deux valeurs de type DATE et retourne le nombre de mois entre ces deux valeurs.
Il est possible de passer des valeurs de type TIMESTAMP et l'ordre n'est pas important. L'écriture de cette fonction a été fortement inspirée par celle de Nathan Bunker. Exemple d'utilisation SELECT months_between('2008-11-08', '2009-2-06'); Nous obtenons en sortie 2 Un peu d'explications Ici nous voulons calculer le nombre de mois entre le 8 novembre 2008 et le 6 septembre 2009. Liste des mois complets = decembre 2008, janvier 2008. Ensuite entre le 8 et le 6 de deux mois il n'y a pas un moi ... Voir la suite |
|
|
|
|
Cette fonction prend en paramètre deux valeurs de type DATE et retourne le nombre d'années entre ces deux valeurs.
Il est possible de passer des valeurs de type TIMESTAMP et l'ordre n'est pas important. Attention, cette fonction réutilise la fonction months_between, il est donc nécessaire d'avoir créé cette dernière, faute de quoi une erreur sera retournée. Si vous préférez créer seulement years_between, une version équivalente est disponible. Exemple d'utilisation SELECT years_between('2008-9-06', '2012-11-08'); Nous obtenons en sortie 4 |
|
|
|
|
Cette fonction ne dépend pas de months_between.
Exemple d'utilisation SELECT years_between('2008-9-06', '2012-11-08'); Nous obtenons en sortie 4 |
|
|