MySQL

08
jan
2010

Ah les arrondis ! On pourrait penser que c'est très simple mais comme souvent le diable se cache dans les détails.

Prenons par exemple la méthode round de PHP. Elle nous propose 4 types d'arrondi :

// Arrondi vers l'infini (méthode par défaut: PHP_ROUND_HALF_UP)
echo round(1.244, 2) . "\n"; // Affiche 1.24
echo round(1.246, 2) . "\n"; // Affiche 1.25
echo round(1.245, 2) . "\n"; // Affiche 1.25
echo round(-1.245, 2) . "\n"; // Affiche -1.25
 
// Arrondi vers zéro
echo round(1.245, 2, PHP_ROUND_HALF_DOWN) . "\n"; // Affiche 1.24
echo round(-1.245, 2, PHP_ROUND_HALF_DOWN) . "\n"; // Affiche -1.24
 
// Arrondi bancaire (arrondi au nombre pair le plus proche)
echo round(1.245, 2, PHP_ROUND_HALF_EVEN) . "\n"; // Affiche 1.24
echo round(1.235, 2, PHP_ROUND_HALF_EVEN) . "\n"; // Affiche 1.24
 
// Arrondi au nombre impair le plus proche
echo round(1.245, 2, PHP_ROUND_HALF_ODD) . "\n"; // Affiche 1.25
echo round(1.235, 2, PHP_ROUND_HALF_ODD) . "\n"; // Affiche 1.23
Libellés : ,

09
sep
2009

Les prix dégressifs sont courants dans le commerce électronique (tout comme dans le commerce traditionnel d'ailleurs). L'idée, c'est que le prix diminue en fonction des quantités demandées. Cela peut également s'appliquer aux tarifs de livraison : plus le poids augmente, plus les frais de livraison augmentent. Par exemple, voici des prix dégressifs pour des tirages photos :

Prix des tirages photos
de 1 à 1000,14 €
de 101 à 2000,12 €
plus de 2000,10 €
Libellés : , ,

15
juil
2009

Ça peut être utile pour répliquer la structure d'une base existante pour exécuter des tests unitaires.

SET MYSQL_BIN=C:\mysql\bin
"%MYSQL_BIN%\mysqldump" --add-drop-table --no-data --opt -uroot bdsource | "%MYSQL_BIN%\mysql" -uroot bddest

Vous devez indiquer le répertoire où se trouve l'exécutable mysql dans la variable MYSQL_BIN. Si votre base de données comporte un mot de passe, vous devez ajouter l'option -p suivi du mot de passe.

ATTENTION, toutes les tables de la base de destination seront effacées !

Libellés :

18
jun
2009
MySQL

MySQL dispose d'un type TIMESTAMP qui permet d'enregistrer la date et l'heure de création ou de modification d'un enregistrement.

Libellés :

24
apr
2009
MySQL

Pour optimiser au mieux sa base de données MySQL, il faut bien choisir ses types de colonnes et leur interclassement afin d'optimiser la taille des tables et des index. Voici quelques conseils pour les types de données les plus courants.

Libellés : ,

21
apr
2009
Logo Zend Framework

Le nombre et la qualité des requêtes SQL ont souvent un impact considérable sur les performances d'un site. Le Zend Framework dispose d'un composant très pratique nommé Zend_Db_Profiler_Firebug qui permet d'afficher le temps d'exécution des différentes requêtes exécutées pour afficher une page.

Libellés : , , ,

21
apr
2009
Le logo de l'IDE NetBeans

... et c'est NetBeans qui est menacé, car Oracle est un contributeur actif d'Eclipse. Quand à MySQL...

Libellés : ,

13
feb
2009
MySQL Pour rappel, un interclassement (ou collation en Anglais) est un ensemble de règles permettant la comparaison de caractères dans un jeu. Ce paramètre influe donc sur le résultat des tris.
Libellés :