Vous n'êtes pas identifié(e).
Bonjour,
Je tente de migrer une base de données Oracle 12 en Postgresql 15.
* L'export m'indique quelques objects "invalid" :
Object Number Invalid
DATABASE LINK 0 0
FUNCTION 21 1
GLOBAL TEMPORARY TABLE 97 0
INDEX 212 0
JOB 3 0
MATERIALIZED VIEW 2 0
PACKAGE BODY 8 1
PROCEDURE 65 12
SEQUENCE 62 0
SYNONYM 0 0
TABLE 201 0
TRIGGER 151 5
TYPE 20 0
VIEW 89 4
Total 931 23
* Lors de l'import , j'obtiens pour le moment cette erreur (dans table) :
psql:schema/tables/table.sql:867: ERREUR: le type de données bigint n'a pas de classe d'opérateurs par défaut pour la méthode d'accès « gin »
ASTUCE : Vous devez spécifier une classe d'opérateur pour l'index ou définir une classe d'opérateur par défaut pour le type de données.
ERROR: an error occurs when importing file ./schema/tables/table.sql.
Sur la ligne 867 de table.sql il y a ceci :
CREATE INDEX idx_type_groupe ON groupes USING gin(f_type);
le f_type renvoit à ceci :
f_type bigint NOT NULL,
Toute ceci dans le code :
CREATE TABLE groupes (
p_id bigint NOT NULL,
f_type bigint NOT NULL,
libelle varchar(255),
nom_usage varchar(30)
) ;
CREATE INDEX idx_libelle_groupe ON groupes (libelle);
CREATE INDEX idx_type_groupe ON groupes USING gin(f_type);
ALTER TABLE groupes ADD PRIMARY KEY (p_id);
ALTER TABLE groupes ALTER COLUMN P_ID SET NOT NULL;
ALTER TABLE groupes ALTER COLUMN F_TYPE SET NOT NULL;
Je vois bien l'astuce : "Vous devez spécifier une classe d'opérateur pour l'index ou définir une classe d'opérateur par défaut pour le type de données"
Mais je n'ai aucune idée de quoi modifier et ce qu'il est possible de tester / modifier pour éviter cette erreur.
Auriez vous des pistes ?
cdlt,
Hors ligne
Bonjour,
avez-vous essayé d'installer l'extension btree_gin dans la base de données cible ?
Cordialement,
Sébastien.
Hors ligne
non, je vais tenter la chose.
Merci.
Hors ligne