select SEQUENCE_OWNER, SEQUENCE_NAME from ALL_SEQUENCES
Run Code Online (Sandbox Code Playgroud)
我们假设上面的代码会给我以下结果.
<Table Name: ALL_SEQUENCES>
SEQUENCE_OWNER SEQUENCE_NAME
schema1 table1_name_seq
schema1 table2_name_seq
schema2 table1_name_seq
Run Code Online (Sandbox Code Playgroud)
我很确定每个序列都有一个对应的父表,序列用于该表.所以,我想使用sequence_name找到父表.例如,如果我知道具有序列所有者schema1的序列名table1_name_seq,我应该找到表名schema1.table1.
建议不要使用SUBSTRING或REPLACE函数重新格式化字符串,因为sequence_name不遵循"良好一致的命名标准",我无权更改它.
我找不到有关此事的任何信息.非常感谢您的帮助!
简答:序列和表之间不是一对一的关系.
长(呃)答案:
您可以对多个表使用单个序列(例如,使用多个触发器).
您必须在数据库对象代码中搜索序列名称,以查看可以使用它的所有位置.
即便如此,你也可能会错过,因为你可以使用PLSQL代码从任何应用程序中的序列中获得下一个值.