如何检查我的模式中是否存在一个序列?

6

有没有一种方法可以检索现有Oracle-SQL数据库模式中定义的所有序列?

理想情况下,我希望使用类似于以下内容的东西:

SELECT * FROM all_sequences WHERE owner = 'me';

似乎不起作用。


你具体在寻找什么,你的表格长什么样子? - Damien Black
3个回答

9

试试这个:

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

7

是的:

select * from user_sequences;

你的SQL语句也几乎正确:

select * from all_sequences where sequence_owner = user;

谢谢Tony,这个也可以,但我选择了另一个答案,因为它更通用。 - Christos

3

以下查询可以在Oracle开发者中触发,以检查数据库中是否存在序列:

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

如果您的数据库中存在 'SEQ_NAME',则计数将返回1,否则返回0。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接