简体   繁体   English

如何检查模式中是否存在序列?

[英]How to check if a sequence exists in my schema?

Is there a way to retrieve all the sequences defined in an existing oracle-sql db schema? 有没有办法检索现有oracle-sql db模式中定义的所有序列?

Ideally I would like to use something like this: 理想情况下,我想使用这样的东西:

SELECT * FROM all_sequences WHERE owner = 'me';

which apparently doesn't work. 这显然不起作用。

Try this: 尝试这个:

SELECT object_name
  FROM all_objects
 WHERE object_type = 'SEQUENCE' AND owner = '<schema name>'

Yes: 是:

select * from user_sequences;

Your SQL was almost correct too: 您的SQL几乎也是正确的:

select * from all_sequences where sequence_owner = user;

Below query can be triggered in Oracle Developer to check whether sequence present in DB or not : 可以在Oracle Developer中触发以下查询,以检查DB中是否存在序列:

SELECT count(*) count FROM user_sequences WHERE sequence_name = 'SEQ_NAME';

If ' SEQ_NAME ' present in your DB then count will return 1 else 0 . 如果您的数据库中存在“ SEQ_NAME ”,则count将返回1,否则为0。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM