Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 Général » Booléens et numerics » 29/05/2009 11:17:30
- Rabbit
- Réponses : 1
Bonjour,
J'ai actuellement un problème lors de mises à jour de ma base de données par mon application.
Je m'explique:
J'ai des champs de type numeric dans ma base de données, or ces champs sont utilisées comme des booléens (0,1 ou NULL).
Ces champs sont mappés comme booléens sous Hibernate, donc au moment de l'update j'ai une erreur de cast.
Il serait trop long de modifier le mapping ou les types des colonnes, donc j'aimerais savoir s'il existait une autre méthode.
En cherchant sur le net, j'ai trouvé la propriété "hibernate.query.substitutions" mais cela ne fonctionne pas...
J'avais aussi penser à surcharger l'opérateur d'affectation, mais je n'ai pas réussi.
Toute aide serait la bienvenue!
#2 Re : Général » Hibernate » 28/05/2009 10:55:28
En fait l'erreur venait de l'application et pas de Hibernate... j'ai corrigé tout ça et l'appli se lance à présent.
Merci pour votre aide!
#3 Re : Général » Hibernate » 27/05/2009 14:44:27
Oui, les erreurs se produisent au démarrage.
Je pense que l'erreur qui fait planter est celle-ci:
%t ERROR: syntax error at or near "session" at character 7
%t STATEMENT: alter session set nls_date_format='DD/MM/YYYY'
#4 Re : Général » Hibernate » 27/05/2009 12:15:46
Bonjour,
Je n'arrive toujours pas à lancer Hibernate avec PostgreSQL.
Quand je regarde le log de PostgreSQL, j'ai une erreur qui se répète:
%t ERROR: current transaction is aborted, commands ignored until end of transaction block
%t STATEMENT: SELECT NULL AS TABLE_CAT, n.nspname AS TABLE_SCHEM, c.relname AS TABLE_NAME, CASE n.nspname ~ '^pg_' OR n.nspname =
'information_schema' WHEN true THEN CASE WHEN n.nspname = 'pg_catalog' OR n.nspname = 'information_schema' THEN CASE c.relkind WHEN 'r' THEN 'SYSTEM
TABLE' WHEN 'v' THEN 'SYSTEM VIEW' WHEN 'i' THEN 'SYSTEM INDEX' ELSE NULL END WHEN n.nspname = 'pg_toast' THEN CASE c.relkind WHEN 'r' THEN
'SYSTEM TOAST TABLE' WHEN 'i' THEN 'SYSTEM TOAST INDEX' ELSE NULL END ELSE CASE c.relkind WHEN 'r' THEN 'TEMPORARY TABLE' WHEN 'i' THEN
'TEMPORARY INDEX' ELSE NULL END END WHEN false THEN CASE c.relkind WHEN 'r' THEN 'TABLE' WHEN 'i' THEN 'INDEX' WHEN 'S' THEN 'SEQUENCE' WHEN 'v'
THEN 'VIEW' ELSE NULL END ELSE NULL END AS TABLE_TYPE, d.description AS REMARKS FROM pg_catalog.pg_namespace n, pg_catalog.pg_class c LEFT JOIN
pg_catalog.pg_description d ON (c.oid = d.objoid AND d.objsubid = 0) LEFT JOIN pg_catalog.pg_class dc ON (d.classoid=dc.oid AND dc.relname='pg_class') LEFT JOIN
pg_catalog.pg_namespace dn ON (dn.oid=dc.relnamespace AND dn.nspname='pg_catalog') WHERE c.relnamespace = n.oid AND c.relname LIKE 'PROBABLYNOT'
AND (false OR ( c.relkind = 'r' AND n.nspname !~ '^pg_' AND n.nspname <> 'information_schema' ) ) ORDER BY TABLE_TYPE,TABLE_SCHEM,TABLE_NAME
Je ne sais pas d'où elle provient...
#5 Général » Hibernate » 19/05/2009 11:25:44
- Rabbit
- Réponses : 7
Bonjour à tous,
J'ai actuellement un problème pour faire fonctionner mon application avec hibernate.
lorsque je lance l'appli, je trouve dans le fichier stdout l'erreur suivante:
ERROR org.hibernate.util.JDBCExceptionReporter - ERROR: current transaction is aborted, commands ignored until end of transaction block
Je pense que ça vient de l'autocommit de Postgre mais je n'arrive pas à le désactiver. J'ai lu quelque part que c'était impossible sur les dernières versions...
J'aimerais bien pouvoir faire fonctionner tout ça sans modifier le code de mon appli qui fonctionnait sous Oracle...
Merci par avance de votre aide.
#6 Re : Migration » Migration vues Oracle » 04/05/2009 15:11:30
Merci, j'ai réussi à trouver toutes les information dans ces tables, par contre maintenant j'aimerais filtrer et récupérer seulement les colonnes indexées...
[edit] En fait j'ai trouvé la colonne indkey de pg_index qui référence les colonnes indexées, mais j'arrive pas a utiliser le type in2vector
[edit2] Finalement j'ai trouvé, ça s'utilise comme un tableau (indkey[1],indkey[2]...)
Bon du coup j'ai réussi à migrer cette vue!
#7 Re : Migration » Migration vues Oracle » 04/05/2009 11:56:05
J'ai besoin des noms des tables, colonnes, positions des colonnes et propriétaire de la table et de l'index.
#8 Migration » Migration vues Oracle » 04/05/2009 10:28:25
- Rabbit
- Réponses : 4
Bonjour à tous,
J'ai de nouveau un problème pour la migration de mes vues d'Oracle vers Postgre.
En effet, une de mes vue fait appel à la table ALL_IND_COLUMNS d'Oracle et la joint à la table ALL_SYNONYMS avec les clés TABLE_NAME et TABLE_OWNER.
Je n'ai pour l'instant trouvé aucun équivalent sous Postgre.
La table Information_schema.columns me semblait intéressante mais il n'y a pas moyen de récupérer le propriétaire...
Si vous aviez quelques pistes je vous en serais très reconnaissant!
#9 Re : Général » Migration de vues » 29/04/2009 10:47:12
Effectivement, c'est bien un problème de casse. J'ignorais l'utilité des double-quote, je me coucherai moins bête ce soir
#10 Re : Général » Migration de vues » 29/04/2009 10:32:13
En fait je crois avoir trouvé l'origine de mon problème.
J'avais oublié d'enlever les double-quote autour du nom de la vue, il semblerait que ça vienne de ça (je saurais pas dire pourquoi d'ailleurs... )
A présent il reconnait ma vue.
Désolé pour le dérangement et merci pour cette réponse rapide!
#11 Général » Migration de vues » 29/04/2009 10:08:33
- Rabbit
- Réponses : 4
Bonjour à tous,
Je suis actuellement en train de faire une migration d'Oracle vers Postgre et je rencontre quelques problèmes avec mes vues.
Certaines vues utilisent d'autres vues dans des jointures et postgre n'a pas l'air d'apprécier, alors que ça fonctionne parfaitement sous Oracle...
En gros ça donne ça:
CREATE OR REPLACE VIEW ma_vue AS
SELECT ma_table.donnee
FROM mon_autre_vue
LEFT OUTER JOIN ma_table ON mon_autre_vue.cle_etrangere=ma_table.cle_primaire;
Postgre me retourne cette erreur:
ERROR: relation "mon_autre_vue" does not exist
État SQL :42P01
Merci de votre aide!
Pages : 1