Accueil - PostgreSQL

Tout afficher

Démarrer et arrêter PostGreSQL en ligne de commande

Wakonda - PostgreSQL Posté le 6 mars 2023

Sur Windows, voici plusieurs commandes utiles à l'utilisation de PostGreSQL.

Démarrer PostGres :

pg_ctl -D "C:\Program Files\PostgreSQL\9.6\data" start

Arrêter le serveur :

pg_ctl -D "C:\Program Files\PostgreSQL\9.6\data" stop

Redémarrer le serveur :

pg_ctl -D "C:\Program Files\PostgreSQL\9.6\data" restart
Lire ...

PostGreSQL - Rechercher une valeur dans toutes les tables

Wakonda - PostgreSQL Posté le 1er novembre 2019

Je vous présente ici une fonction PostGreSQL permettant de rechercher une valeur donnée dans l'ensemble des champs de toutes les tables d'une base de données.

Fonction :

CREATE OR REPLACE FUNCTION search_whole_db(_like_pattern text)
  RETURNS TABLE(_tbl regclass, _ctid tid) AS
$func$
BEGIN
   FOR _tbl IN
      SELECT c.oid::regclass
      FROM   pg_class c
      JOIN   pg_namespace n ON n.oid = relnamespace
      WHERE  c.relkind = 'r'                           -- only tables
      AND    n.nspname !~ '^(pg_|information_schema)'  -- exclude system schemas
      ORDER BY n.nspname, c.relname
   LOOP
      RETURN QUERY EXECUTE format(
         'SELECT $1, ctid FROM %s t WHERE t::text ~~ %L'
       , _tbl, '%' || _like_pattern || '%')
      USING _tbl;
   END LOOP;
END
$func$  LANGUAGE plpgsql;

Utilisation :

SELECT * FROM search_whole_db('mypattern');

 

Lire ...

PostGreSQL - Supprimer des doublons

Wakonda - PostgreSQL Posté le 1er novembre 2019

Voici une requête qui vous permettra de supprimer les doublons dans une base de données PostGresSQL :

DELETE FROM dups a USING (
      SELECT MIN(ctid) as ctid, key
        FROM dups 
        GROUP BY key HAVING COUNT(*) > 1
      ) b
      WHERE a.key = b.key 
      AND a.ctid <> b.ctid

 

Lire ...

Rechercher

Tags

Publicité

Suivez-nous

Aidez-nous !

Admin