SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Downloaden Sie, um offline zu lesen
   
Les fonctions et fonctionnalités
MariaDB
Christophe Villeneuve
@hellosct1
Stéphane Varoqui
@svaroqui
Le 29/01/2015 – Meetup ­ Les bonnes pratiques avec MariaDB
   
Qui ?
Stéphane Varoqui Christophe Villeneuve
<<
afup – lemug.fr – mysql – mariadb – drupal – demoscene – firefoxos – drupagora – phptour – forumphp – solutionlinux – demoinparis – ici et maintenant – eyrolles – editions eni – programmez – linux pratique – webriver – phptv – neuros ­ elephpant
Les points d'aujourd'hui
● Les fonctions
● Les fonctionnalités
   
5
fonctions
   
Microseconds
✔ Précision date-heure
✔ Avant
– TIME
– DATETIME
– TIMESTAMP
✔ Dispo MariaDB 5.3+
– temporal functions
– CAST
– dynamic columns
Source : https://mariadb.com/kb/en/mariadb/microseconds­in­mariadb/
   
✔ Create table t1 (d
DATETIME) ;
✔ Insert INTO t1 values....
✔
Select * from t1 ;
✔ Create table t2
(d DATETIME (6) ) ;
✔ Insert Into t2 values
('2011-03-11'),
('2012-04-19 13:08:22'),
('2013-07-18 13:44:22.123456');
✔ Select * from t2 ;
Avant MariaDB 5.3+
Exemple (Microseconds)
   
PCRE 
✔ Disponible MariaDB 10.0+
✔ Expressions régulières
✔ Compatible
● REGEXP
● RLIKE operator
✔ Fonctionne
– Multi caractères
Source : https://mariadb.com/kb/en/mariadb/pcre/
   
✔ Fonction de remplace
SELECT REGEXP_REPLACE('ab12cd','[0-9]','') AS r;
→ abcd
Exemple (PCRE) (1/2)
✔ Retourne 1ère position
SELECT REGEXP_INSTR('abc','b') ;
→ 2
SELECT REGEXP_INSTR('hello','o') ;
→ 5
   
✔ Retourne la partie correspondante d'une chaine
SELECT REGEXP_SUBSTR(
'http://www.lemug.fr/category/actualites/',
'http?://[^/]*')
→ http://www.lemug.fr
Exemple (PCRE) (2/2)
   
Colonnes Virtuelles
✔ Disponible MariaDB 5.2+
✔ Colonne dans une table qui sa valeur calculée
automatiquement
✔ 2 types :
– VIRTUAL : sur le principe d'une vue
– PERSISTENT : Calculé lorsque les données sont
insérées et stockées dans une table
Source : https://mariadb.com/kb/en/virtual­columns/
   
> CREATE TABLE table1 (
a INT NOT NULL,
b VARCHAR(32),
c INT AS (a mod 10) VIRTUAL,
d VARCHAR(5) AS (left(b,5)) PERSISTENT
);
> DESCRIBE table1;
Exemple (Colonnes Virtuelles) (1/2)
   
> INSERT INTO table1 VALUES
(1, 'some text',default,default),
(2, 'more text',5,default),
(123, 'even more text',default,'something');
> Select * from table1;
Exemple (Colonnes Virtuelles) (2/2)
   
Colonnes dynamiques
✔ Dispo MariaDB 5.3+
✔ Pont entre les BDD relationnelles et non
relationnelles
✔ Toutes les colonnes stockées dans un 'blob'
✔ Possibilité de manipuler
✔ Possibilité de créer des index virtuels
Source : https://mariadb.com/kb/en/mariadb/dynamic­columns/
   
create table newsql( 
id int 
    auto_increment    
    primary key,
nom varchar(40),
type enum 
     ('animal',
     'ordinateur'),
prix int,
nosql blob);
COLUMN_CREATE(
column_nr, 
value [as type],
[
column_nr, 
value [as type]
], 
...)
Exemple (colonne dynamique) 1/3
ID nom type Prix blob
Multi produits
   
Exemple (colonne dynamique) 2/3
>INSERT into newsql values (NULL, 'Atari' ,'ordinateur',500, 
COLUMN_CREATE('couleur', 'Noir', 'type' , 'STe'));
>INSERT into newsql values (NULL, 'elePHPant','animal',20, 
COLUMN_CREATE('taille', 'normal', 'description' , 'peluche'));
>UPDATE newsql SET nosql = COLUMN_ADD(nosql, 'couleur' , 'blue') 
WHERE id=2;
ID Nom type prix couleur type taille description
1 Atari Ordinateur 500 Noir Ste
2 elePHPant animal 20 bleu normal peluche
>SELECT nom, column_list (nosql) FROM newsql;
Multi produits
   
Exemple (colonne dynamique) 3/3
>SELECT nom, COLUMN_JSON(nosql) FROM newsql;
>SELECT id,type,nom,
COLUMN_GET(nosql, 'couleur' as char) AS couleur,prix FROM newsql;
Multi produits
   
Sequence Engine
✔ Dispo MariaDB 10.0.3+
✔ Une fonction en Storage Engine
✔ Pas de création & pas de lecture de table
✔ Principe :
✔ Génère à la volée une séquence de nombres entiers
✔ Résultat retourné à votre requête
✔ La fonction disparaît
✔ Plugin nécessaire à installer : ha_sequence
> install soname "ha_sequence";
Source : https://mariadb.com/kb/en/mariadb/sequence
   
> select * FROM seq_1_to_3;
Exemple (Sequence) 1/2
> select * FROM seq_5_to_1_step_2;
   
✔ Calcul de date
Ex : Connaître le jour de la semaine d'une date
donnée :
✔ exemple : Le 1er Janvier tombe… Quand ?
> SELECT
DAYNAME('2015-01-01' + INTERVAL (seq) YEAR) day,
'2015-01-01' + INTERVAL (seq) YEAR date
FROM seq_0_to_10;
Exemple (Sequence) 2/2
   
Les fonctionnalités
   
La suite est disponible
http://fr.slideshare.net/lemugfr/les­fonctionnalites­mariadb
   
Merci

Weitere ähnliche Inhalte

Andere mochten auch

La sécurité à tous les niveaux - JDLL
La sécurité à tous les niveaux - JDLLLa sécurité à tous les niveaux - JDLL
La sécurité à tous les niveaux - JDLLChristophe Villeneuve
 
Installer et configurer MariaDB
Installer et configurer MariaDBInstaller et configurer MariaDB
Installer et configurer MariaDBlemugfr
 
JABES 2015 - Implémentation du RDA dans les pays germanophones : un changemen...
JABES 2015 - Implémentation du RDA dans les pays germanophones : un changemen...JABES 2015 - Implémentation du RDA dans les pays germanophones : un changemen...
JABES 2015 - Implémentation du RDA dans les pays germanophones : un changemen...ABES
 
iCAP et l'évaluation des enseignements
iCAP et l'évaluation des enseignementsiCAP et l'évaluation des enseignements
iCAP et l'évaluation des enseignementsNicolas Coltice
 
Citizen2.0 - Facebook f8 two years before
Citizen2.0 - Facebook f8 two years beforeCitizen2.0 - Facebook f8 two years before
Citizen2.0 - Facebook f8 two years beforePierre Valade
 
MADEN
MADENMADEN
MADENMADEN
 
Argumentaire suite a la lettre de licenciement du 03 février 2012
Argumentaire suite a la lettre de licenciement du 03 février 2012Argumentaire suite a la lettre de licenciement du 03 février 2012
Argumentaire suite a la lettre de licenciement du 03 février 2012plumesolidaire2010
 
Elections régionales en cartes
Elections régionales en cartesElections régionales en cartes
Elections régionales en cartesSciences Po
 
C:\Documents And Settings\Corel\Escritorio\Ticss
C:\Documents And Settings\Corel\Escritorio\TicssC:\Documents And Settings\Corel\Escritorio\Ticss
C:\Documents And Settings\Corel\Escritorio\Ticssitzelita1
 
Expo Pablo A. Rivero - Presscamp Bo
Expo   Pablo A. Rivero - Presscamp BoExpo   Pablo A. Rivero - Presscamp Bo
Expo Pablo A. Rivero - Presscamp BoGobernabilidad
 

Andere mochten auch (20)

Le service workers
Le service workersLe service workers
Le service workers
 
La sécurité à tous les niveaux - JDLL
La sécurité à tous les niveaux - JDLLLa sécurité à tous les niveaux - JDLL
La sécurité à tous les niveaux - JDLL
 
Chiffrer et sécuriser MariaDB
Chiffrer et sécuriser MariaDBChiffrer et sécuriser MariaDB
Chiffrer et sécuriser MariaDB
 
Firefox OS - Api battery status
Firefox OS - Api battery statusFirefox OS - Api battery status
Firefox OS - Api battery status
 
Installer et configurer MariaDB
Installer et configurer MariaDBInstaller et configurer MariaDB
Installer et configurer MariaDB
 
Essun lotus-city-vrindavan-plots
Essun lotus-city-vrindavan-plotsEssun lotus-city-vrindavan-plots
Essun lotus-city-vrindavan-plots
 
Libro cies. Cárceles encubiertas
Libro cies. Cárceles encubiertasLibro cies. Cárceles encubiertas
Libro cies. Cárceles encubiertas
 
Ansiendad y angustia
Ansiendad y angustiaAnsiendad y angustia
Ansiendad y angustia
 
JABES 2015 - Implémentation du RDA dans les pays germanophones : un changemen...
JABES 2015 - Implémentation du RDA dans les pays germanophones : un changemen...JABES 2015 - Implémentation du RDA dans les pays germanophones : un changemen...
JABES 2015 - Implémentation du RDA dans les pays germanophones : un changemen...
 
iCAP et l'évaluation des enseignements
iCAP et l'évaluation des enseignementsiCAP et l'évaluation des enseignements
iCAP et l'évaluation des enseignements
 
Redes sociales
Redes socialesRedes sociales
Redes sociales
 
Citizen2.0 - Facebook f8 two years before
Citizen2.0 - Facebook f8 two years beforeCitizen2.0 - Facebook f8 two years before
Citizen2.0 - Facebook f8 two years before
 
Pérouges power point
Pérouges   power pointPérouges   power point
Pérouges power point
 
Le Ecommerce en 5 étapes
Le Ecommerce en 5 étapesLe Ecommerce en 5 étapes
Le Ecommerce en 5 étapes
 
MADEN
MADENMADEN
MADEN
 
Argumentaire suite a la lettre de licenciement du 03 février 2012
Argumentaire suite a la lettre de licenciement du 03 février 2012Argumentaire suite a la lettre de licenciement du 03 février 2012
Argumentaire suite a la lettre de licenciement du 03 février 2012
 
Elections régionales en cartes
Elections régionales en cartesElections régionales en cartes
Elections régionales en cartes
 
Mishu
MishuMishu
Mishu
 
C:\Documents And Settings\Corel\Escritorio\Ticss
C:\Documents And Settings\Corel\Escritorio\TicssC:\Documents And Settings\Corel\Escritorio\Ticss
C:\Documents And Settings\Corel\Escritorio\Ticss
 
Expo Pablo A. Rivero - Presscamp Bo
Expo   Pablo A. Rivero - Presscamp BoExpo   Pablo A. Rivero - Presscamp Bo
Expo Pablo A. Rivero - Presscamp Bo
 

Ähnlich wie Les fonctions MariaDB - LeMug.fr

WS User Group - Spring Batch - Xebia
WS User Group - Spring Batch - XebiaWS User Group - Spring Batch - Xebia
WS User Group - Spring Batch - XebiaOlivier BAZOUD
 
Apache mariadb php pour un développement libre au RMLL 2015
Apache mariadb php pour un développement libre au RMLL 2015Apache mariadb php pour un développement libre au RMLL 2015
Apache mariadb php pour un développement libre au RMLL 2015Christophe Villeneuve
 
DrupalCamp Lyon 2012 - Optimiser les performances Drupal depuis les tranchées
DrupalCamp Lyon 2012 -  Optimiser les performances Drupal depuis les tranchéesDrupalCamp Lyon 2012 -  Optimiser les performances Drupal depuis les tranchées
DrupalCamp Lyon 2012 - Optimiser les performances Drupal depuis les tranchéesAurelien Navarre
 
Scrapez facilement et gratuitement
Scrapez facilement et gratuitementScrapez facilement et gratuitement
Scrapez facilement et gratuitementMadeline Pinthon
 
Php 2 - Approfondissement MySQL, PDO et MVC
Php 2 - Approfondissement MySQL, PDO et MVCPhp 2 - Approfondissement MySQL, PDO et MVC
Php 2 - Approfondissement MySQL, PDO et MVCPierre Faure
 
Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?Christophe Villeneuve
 
C2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieC2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieLoic Yon
 
Analyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL ServeurAnalyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL ServeurMicrosoft Technet France
 

Ähnlich wie Les fonctions MariaDB - LeMug.fr (20)

Le nouveau AMP : apache mariadb php
Le nouveau AMP : apache mariadb phpLe nouveau AMP : apache mariadb php
Le nouveau AMP : apache mariadb php
 
Php et Mariadb dans le libre - JDLL
Php et Mariadb dans le libre - JDLLPhp et Mariadb dans le libre - JDLL
Php et Mariadb dans le libre - JDLL
 
Liquibase en action
Liquibase en actionLiquibase en action
Liquibase en action
 
MySQL et MariaDB dans le web‎
MySQL et MariaDB dans le web‎ MySQL et MariaDB dans le web‎
MySQL et MariaDB dans le web‎
 
1 2-3-grails
1 2-3-grails1 2-3-grails
1 2-3-grails
 
Mariadb une base de données NewSQL
Mariadb une base de données NewSQLMariadb une base de données NewSQL
Mariadb une base de données NewSQL
 
Une Introduction à R
Une Introduction à RUne Introduction à R
Une Introduction à R
 
WS User Group - Spring Batch - Xebia
WS User Group - Spring Batch - XebiaWS User Group - Spring Batch - Xebia
WS User Group - Spring Batch - Xebia
 
Apache mariadb php pour un développement libre au RMLL 2015
Apache mariadb php pour un développement libre au RMLL 2015Apache mariadb php pour un développement libre au RMLL 2015
Apache mariadb php pour un développement libre au RMLL 2015
 
Paris RailsCamp 2009
Paris RailsCamp 2009Paris RailsCamp 2009
Paris RailsCamp 2009
 
MariaDB une base de donnees NewSQL
MariaDB une base de donnees NewSQLMariaDB une base de donnees NewSQL
MariaDB une base de donnees NewSQL
 
Sécurité MySQL
Sécurité MySQLSécurité MySQL
Sécurité MySQL
 
DrupalCamp Lyon 2012 - Optimiser les performances Drupal depuis les tranchées
DrupalCamp Lyon 2012 -  Optimiser les performances Drupal depuis les tranchéesDrupalCamp Lyon 2012 -  Optimiser les performances Drupal depuis les tranchées
DrupalCamp Lyon 2012 - Optimiser les performances Drupal depuis les tranchées
 
Infrastructure as code drupal
Infrastructure as code drupalInfrastructure as code drupal
Infrastructure as code drupal
 
Scrapez facilement et gratuitement
Scrapez facilement et gratuitementScrapez facilement et gratuitement
Scrapez facilement et gratuitement
 
PHP et MariaDB dans le Cloud
PHP et MariaDB dans le CloudPHP et MariaDB dans le Cloud
PHP et MariaDB dans le Cloud
 
Php 2 - Approfondissement MySQL, PDO et MVC
Php 2 - Approfondissement MySQL, PDO et MVCPhp 2 - Approfondissement MySQL, PDO et MVC
Php 2 - Approfondissement MySQL, PDO et MVC
 
Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?Open source et microsoft azure reve ou realite ?
Open source et microsoft azure reve ou realite ?
 
C2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieC2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partie
 
Analyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL ServeurAnalyse et optimisation des performances du moteur SQL Serveur
Analyse et optimisation des performances du moteur SQL Serveur
 

Mehr von Christophe Villeneuve

La boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxLa boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxChristophe Villeneuve
 
controler vos donnees éthiques dans le web
controler vos donnees éthiques dans le webcontroler vos donnees éthiques dans le web
controler vos donnees éthiques dans le webChristophe Villeneuve
 
Open Source et contribution : Une association gagnante
Open Source et contribution : Une association gagnanteOpen Source et contribution : Une association gagnante
Open Source et contribution : Une association gagnanteChristophe Villeneuve
 
Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?Christophe Villeneuve
 
La sécurité applicative par le design
La sécurité applicative par le designLa sécurité applicative par le design
La sécurité applicative par le designChristophe Villeneuve
 
Mozilla french speaking community activites
Mozilla french speaking community activitesMozilla french speaking community activites
Mozilla french speaking community activitesChristophe Villeneuve
 
Monitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et MicrosoftMonitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et MicrosoftChristophe Villeneuve
 
Le futur de l'authentification webAuthn
Le futur de l'authentification webAuthnLe futur de l'authentification webAuthn
Le futur de l'authentification webAuthnChristophe Villeneuve
 
Tests d'accessibilite par la pratique
Tests d'accessibilite par la pratiqueTests d'accessibilite par la pratique
Tests d'accessibilite par la pratiqueChristophe Villeneuve
 
La réalité mélangée dans vos applications
La réalité mélangée dans vos applicationsLa réalité mélangée dans vos applications
La réalité mélangée dans vos applicationsChristophe Villeneuve
 
la boite à outils de développements dans firefox devtools
la boite à outils de développements dans firefox devtoolsla boite à outils de développements dans firefox devtools
la boite à outils de développements dans firefox devtoolsChristophe Villeneuve
 

Mehr von Christophe Villeneuve (20)

La boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxLa boîte à outils de développements dans Firefox
La boîte à outils de développements dans Firefox
 
pister les pisteurs
pister les pisteurspister les pisteurs
pister les pisteurs
 
controler vos donnees éthiques dans le web
controler vos donnees éthiques dans le webcontroler vos donnees éthiques dans le web
controler vos donnees éthiques dans le web
 
Open Source et contribution : Une association gagnante
Open Source et contribution : Une association gagnanteOpen Source et contribution : Une association gagnante
Open Source et contribution : Une association gagnante
 
Pentest bus pirate
Pentest bus piratePentest bus pirate
Pentest bus pirate
 
Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?Peur de la migration vers l’open source ?
Peur de la migration vers l’open source ?
 
La sécurité applicative par le design
La sécurité applicative par le designLa sécurité applicative par le design
La sécurité applicative par le design
 
Foxfooding semaine 3
Foxfooding semaine 3Foxfooding semaine 3
Foxfooding semaine 3
 
Foxfooding
FoxfoodingFoxfooding
Foxfooding
 
Accessibilite web wcag rgaa
Accessibilite web wcag rgaaAccessibilite web wcag rgaa
Accessibilite web wcag rgaa
 
Mozilla french speaking community activites
Mozilla french speaking community activitesMozilla french speaking community activites
Mozilla french speaking community activites
 
Monitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et MicrosoftMonitoring dynamique : Grafana et Microsoft
Monitoring dynamique : Grafana et Microsoft
 
Etes vous-pret pour php8 ?
Etes vous-pret pour php8 ?Etes vous-pret pour php8 ?
Etes vous-pret pour php8 ?
 
Le futur de l'authentification webAuthn
Le futur de l'authentification webAuthnLe futur de l'authentification webAuthn
Le futur de l'authentification webAuthn
 
Send large files with addons
Send large files with addonsSend large files with addons
Send large files with addons
 
Tests d'accessibilite par la pratique
Tests d'accessibilite par la pratiqueTests d'accessibilite par la pratique
Tests d'accessibilite par la pratique
 
Donnez la voix aux machines
Donnez la voix aux machinesDonnez la voix aux machines
Donnez la voix aux machines
 
La réalité mélangée dans vos applications
La réalité mélangée dans vos applicationsLa réalité mélangée dans vos applications
La réalité mélangée dans vos applications
 
la boite à outils de développements dans firefox devtools
la boite à outils de développements dans firefox devtoolsla boite à outils de développements dans firefox devtools
la boite à outils de développements dans firefox devtools
 
la réalité mélangée de A a Z
la réalité mélangée de A a Zla réalité mélangée de A a Z
la réalité mélangée de A a Z
 

Les fonctions MariaDB - LeMug.fr