Ce n'est pas tous les jours que l'on a besoin de modifier un champs en base de donnée qui est simplement de type integer pour qu'il devienne un champs auto incrémenté. Cela nécessite quelques manipulations dans une base de donnée PostgresQL.
Que serait une application web sans une base de donnée? J'utilise essentiellement MySQL et un peu MariaDB qui est très proche. Les articles dans cette catégories sont variés. Certains traitent de la configuration de l'environnement, d'autres la gestion et la config du serveur MySQL. Et certains essayent de répondre à des questions classiques sur le stockage et l'utilisation des dates dans MySQL/MariaDB par exemple.
Ce n'est pas tous les jours que l'on a besoin de modifier un champs en base de donnée qui est simplement de type integer pour qu'il devienne un champs auto incrémenté. Cela nécessite quelques manipulations dans une base de donnée PostgresQL.
Assez fréquemment on me demande d'exporter des données contenues dans une base de donnée au format CSV. Parfois une simple table, parfois une requête plus complexe est nécessaire. Si les données n'ont pas besoin d'être modifiées, il est possible d'exporter les données directement depuis la base de donnée sans passer par un langage de programmation.
Quand les requêtes en base de donnée deviennent lentes, une bonne approche est d'utiliser la fonction Explain pour avoir le plan d’exécution de la requête. Mais le résultat n'est pas toujours évident. Dans cet article je vous montre comment j'ai utilisé Explain pour résoudre des problèmes de performance.
Suite au premier article montrant les possibilités des fonctions JSON de MySQL8 sur un champ JSON contenant un tableau simple, nous allons voir ce qui est possible de faire avec un objet JSON.
MySQL, avec sa version 8 a introduit un support avancé du type et des fonctions JSON. La documentation est complète et présente toutes les fonctions, mais je trouve que les exemples ne sont pas très parlant et n'aident pas à savoir quelle fonction utiliser selon le besoin. J'ai donc voulu, à partir d'une base de donnée simplifiée, montrer quelques exemples de ce que ce format permet de faire. Pour ce premier article, je vais traiter le cas d'un JSON contenant un tableau simple..
Écrire des tests unitaires ou fonctionnels sur du code est quasiment devenu un standard. Avoir un serveur qui automatise la vérification de ces tests et qui déploie le code est l'objectif accomplis de beaucoup d'équipes de développement. Malgré cela, ces bonnes pratiques sont rarement mise en place pour les migrations de schéma de base de donnée. Dans cet article, je vais vous montrer comment avec un peu de bash et Jenkins, je testes et j'automatise mes migrations SQL.
L'attribution de droit dans MySQL et MariaDB est parfois un casse tête surtout si l'on souhaite avoir un contrôle par table pour un utilisateur. Il est possible d'utiliser un wildcard dans la commande Grant mais sa syntaxe n'est pas des plus explicite.
Avez vous déjà pensé à utiliser le fichier de configuration .my.cnf pour faciliter la connexion à vos bases de donnée MySQL ou MariaDB? Cette configuration est très pratique quand l'on a à gérer plusieurs bases de donnée et/ou plusieurs serveurs. Je vous propose donc une présentation de ce que l'on peut faire avec dans cet article.
Il existe plusieurs façons de stocker des dates en base de données, le choix n'est pas si simple, surtout si on a besoin de la timezone. Dans cet article j'explique les différentes solutions avec leurs avantages et inconvénients.
Les modifications de structure de table (alter table) en base de donnée peuvent parfois prendre beaucoup de temps et deviennent une tache sans cesse repoussée par les admins pour finalement être souvent jouée à des heures tardives. Pourtant il existe des outils pour répondre à cette problématique ; pt-online de Percona Toolkit est l'un d'entre eux.