Oracle中有关表主键的问题
2005-11-24 11:27
204 查看
目前正在开发的系统需要对表的物理机构进行更改,包括删除表的主键然后重建,查了相关的资料,发现Oracle中与用户表结构相关的系统表有user_cons_columns,user_constraints,user_ind_columns ,第一张表存放用户表受约束字段的名称,第二章表存放用户表中受约束字段的约束类型,第三张表则主要存放用户表所含的所有字段。因此也就可以通过以下两种方式获得表主键信息:
select b.column_name
from user_constraints a,user_ind_columns b
where a.index_name=b.index_name
and a.table_name='指定的表名'
AND a.CONSTRAINT_TYPE='P';
或者
SELECT col.column_name, col.position
FROM user_cons_columns col, user_constraints con
WHERE con.constraint_name = col.constraint_name
AND con.owner = col.owner
AND con.table_name = col.table_name
AND con.table_name = '指定的表名'
AND con.constrant_type = 'P'
select b.column_name
from user_constraints a,user_ind_columns b
where a.index_name=b.index_name
and a.table_name='指定的表名'
AND a.CONSTRAINT_TYPE='P';
或者
SELECT col.column_name, col.position
FROM user_cons_columns col, user_constraints con
WHERE con.constraint_name = col.constraint_name
AND con.owner = col.owner
AND con.table_name = col.table_name
AND con.table_name = '指定的表名'
AND con.constrant_type = 'P'
相关文章推荐
- MyBatis在Oracle中插入数据并返回主键的问题解决
- MyBatis在Oracle中插入数据并返回主键的问题解决
- WIN7下安装Oracle 10g 的详细过程以及有关问题的解决(转)
- 有关Oracle中ORA-12560:TNS:协议适配器出错的问题
- ADO.NET(二) oracle数据库链接、和Oracle.DataAccess.dll 有关异常的各种问题
- MyBatis在Oracle中插入数据并返回主键的问题解决
- SQLQuery 查询Oracle char类型返回一个字符有关问题
- 有关JPA主键自动生成策略注意问题
- oracle主键生成问题
- ORACLE新增主键问题【CREATE PRIMARY KEY AFTER CREATED A TABLE】
- 有关oracle游标的若干问题
- 有关oracle 9i中的内连接,左外连接,右外连接问题
- Oracle 10g中跟EM有关的问题解决方法
- hibernate oracle主键自增长中sequence跳号无序的问题
- oracle 数据按主键删除慢问题处理过程
- 有关jdk和oracle和eclipse问题
- oracle删除主键约束的问题m
- oracle主键问题
- 有关Oracle sqlplus的连接问题
- Oracle的主键问题