J'utilise Oracle 11g. Je veux être capable de déterminer si une séquence particulière existe ou non. J'ai essayé le code ci-dessous mais cela ne fonctionne pas. (Il renvoie 0 comme valeur de comptage alors qu'il devrait y en avoir plus):
SELECT COUNT(*)
FROM user_sequences
WHERE sequence_name = 'SCHEMA.SEQUENCE_NAME';
Si quelqu'un sait pourquoi, aidez-moi s'il vous plaît.
Si vous exécutez la requête en tant qu'utilisateur MP
, essayez-la comme suit:
SELECT COUNT(*)
FROM user_sequences
WHERE sequence_name = 'SEQ_SSO_KEY_AUTHENTICATION';
sinon, essayez comme ça:
SELECT COUNT(*)
FROM all_sequences
WHERE sequence_name = 'SEQ_SSO_KEY_AUTHENTICATION'
AND sequence_owner = 'MP' ;
De plus, gardez à l’esprit que vous ne pourrez peut-être pas voir toutes les séquences dans la base de données ..... Dans ce cas, les scripts fournis ci-dessus risquent de ne pas fonctionner et vous devez exécuter quelque chose comme:
SELECT COUNT(*) FROM DBA_SEQUENCES;
Mais cela risque également de ne pas fonctionner si vous n'avez pas accès à la vue DBA_SEQUENCES.
Vérifiez Documents Oracle .