oracle怎么表主键和,oracle查看表主键语句

如何在oracle创建时就指定表的主键和外键

�0�2创建表的语法 -创建表格语法: create table 表名( �0�2�0�2 字段名1�0�2 字段类型(长度) 是否为空, �0�2�0�2 字段名2�0�2 字段类型�0�2�0�2�0�2�0�2�0�2�0�2 是否为空);-增加主键 alter table 表名 add constraint 主键名 primary key (字段名1);-增加外键: alter table 表名 �0�2�0�2 add constraint 外键名 foreign key (字段名1) �0�2�0�2�0�2�0�2�0�2 references 关联表 (字段名2); 在建立表格时就指定主键和外键 create table T_STU�0�2 (

从事四川联通机房服务器托管,服务器租用,云主机,网站空间域名注册,CDN,网络代维等服务。

oracle中的数据库怎样设置主键?

建表要点:

1 Gengeral 中定义表名,表空间。

2 Columns 对字段进行定义。

3 在Key选择主键字段,定义主键名称,一般用表名。

不能“Apply” 一般是定义不完全。

oracle:

甲骨文公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989年正式进入中国市场。2013年,甲骨文已超越 IBM ,成为继 Microsoft 后全球第二大软件公司。

2017年6月7日发布的2017年美国《财富》500强,甲骨文公司排名第81位。2017年6月,《2017年BrandZ最具价值全球品牌100强》公布,甲骨文公司排名第46位。

20世纪约70年代 一间名为Ampex的软件公司,正为中央情报局设计一套名叫Oracle的数据库,埃里森是程序员之一。

1977年埃里森与同事Robert Miner创立“软件开发实验室”(Software Development Labs),当时IBM发表“关系数据库”的论文,埃里森以此造出新数据库,名为甲骨文。

1978年 公司迁往硅谷,更名为“关系式软件公司”(RSI)。RSI在1979年的夏季发布了可用于DEC公司的PDP-11计算机上的商用ORACLE产品,这个数据库产品整合了比较完整的SQL实现,其中包括子查询、连接及其他特性。美国中央情报局想买一套这样的软件来满足他们的需求,但在咨询了IBM公司之后发现IBM没有可用的商用产品,他们联系了RSI。于是RSI有了第一个客户。

最先提出“关系数据库”的IBM采用RSI的数据库。1982年再更名为甲骨文(Oracle)。

oracle怎么实现id自增和设置主键

(1)ID自增可以使用sequence实现,创建sequence的语句如下:

create sequence SEQ_ID  /*Sequence名称为SEQ_ID*/

minvalue 1   /*最小值*/

maxvalue 99999999 /*最大值*/

start with 1 /*开始值*/

increment by 1 /*每次增加的值*/

cache 20; /*缓存个数*/

插入时使用SEQ_ID.NEXTVAL取下一个值。

(2)例如设置ID列为B表的主键,主键名称为PK_B,使用如下语句:

alter table B

add constraint PK_B primary key (ID);

注:建议使用PLSQLDeveloper工具,上述操作都可以实现可视化,很方便。

Oracle查看表索引、主键、外键、约束

查看表索引、主键、外键、约束

(包括索引名,类型,构成列)

SELECT T.*, I.INDEX_TYPE

FROM USER_IND_COLUMNS T,USER_INDEXES I

WHERE T.INDEX_NAME = I.INDEX_NAME

AND T.TABLE_NAME = I.TABLE_NAME

AND T.TABLE_NAME = 'ORG_DLF' ----指定表

AND T.TABLE_OWNER= 'ODSRPT_SIT2'; ----指定用户

(包括名称,构成列)

SELECT CU.*

FROM DBA_CONS_COLUMNS CU, DBA_CONSTRAINTS AU

WHERE CU.CONSTRAINT_NAME = AU.CONSTRAINT_NAME

AND AU.CONSTRAINT_TYPE = 'P'

AND AU.TABLE_NAME = 'LOAN_APPLICATION_FEE' -----指定表名

AND CU.OWNER='ODSRPT_SIT2'; -----指定用户名

(包括表名称,构成列)

SELECT CU.COLUMN_NAME,AU.TABLE_NAME

FROM DBA_CONS_COLUMNS CU, DBA_CONSTRAINTS AU

WHERE CU.CONSTRAINT_NAME = AU.CONSTRAINT_NAME

AND AU.CONSTRAINT_TYPE = 'U'

AND AU.OWNER='RPT_UAT2' -----指定用户名

AND AU.TABLE_NAME = 表名 ; -----指定表名

Select a.Owner 外键拥有者,

a.Table_Name 外键表,

c.Column_Name 外键列,

b.Owner 主键拥有者,

b.Table_Name 主键表,

d.Column_Name 主键列,

c.Constraint_Name 外键名,

d.Constraint_Name 主键名

From User_Constraints a,

 user_Constraints b,

user_Cons_Columns c, --外键表

user_Cons_Columns d --主键表

Where a.r_Constraint_Name = b.Constraint_Name

And a.Constraint_Type = 'R'

And b.Constraint_Type = 'P'

And a.r_Owner = b.Owner

And a.Constraint_Name = c.Constraint_Name

And b.Constraint_Name = d.Constraint_Name

And a.Owner = c.Owner

And a.Table_Name = c.Table_Name

And b.Owner = d.Owner

And b.Table_Name = d.Table_Name;

oracle怎么查询所有的表有没有主键

1、查找表的所有索引(包括索引名,类型,构成列):

select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = 要查询的表

2、查找表的主键(包括名称,构成列):

select cu.* from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'P' and au.table_name = 要查询的表

3、查找表的唯一性约束(包括名称,构成列):

select column_name from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'U' and au.table_name = 要查询的表

4、查找表的外键(包括名称,引用表的表名和对应的键名,下面是分成多步查询):

select * from user_constraints c where c.constraint_type = 'R' and c.table_name = 要查询的表

查询外键约束的列名:

select * from user_cons_columns cl where cl.constraint_name = 外键名称

查询引用表的键的列名:

select * from user_cons_columns cl where cl.constraint_name = 外键引用表的键名

5、查询表的所有列及其属性

select t.*,c.COMMENTS from user_tab_columns t,user_col_comments c where t.table_name = c.table_name and t.column_name = c.column_name and t.table_name = 要查询的表

6、Oracle中每个用户表的表名和行数

select table_name,num_rows from user_tables;

7、Oracle查询用户表空间:select * from user_all_tables

8、Oracle查询所有函数和储存过程:select * from user_source

9、Oracle查询所有用户:

select * from all_users;

select * from dba_users

10、Oracle查看当前用户连接:select * from v$Session

11、Oracle查看当前用户权限:select * from session_privs

12、Oracle查看用户表空间使用情况:

select a.file_id "FileNo",a.tablespace_name

"Tablespace_name",

a.bytes "Bytes",a.bytes-sum(nvl(b.bytes,0)) "Used",

sum(nvl(b.bytes,0)) "Free",

sum(nvl(b.bytes,0))/a.bytes*100 "%free"

from dba_data_files a, dba_free_space b

where a.file_id=b.file_id(+)

group by a.tablespace_name ,

a.file_id,a.bytes order by a.tablespace_name;

Oracle中怎样查看所有的表,列,属性,主键等信息

在Oracle中查看所有的表: select * from tab/dba_tables/dba_objects/cat; 看用户建立的表 : select table_name from user_tables; // 当前用户的表 select table_name from all_tables; // 所有用户的表 select table_name from dba_tables; //包括系统表 可以查询出所有的用户表索引 select * from user_indexes // 查所有用户的表在all_tables 主键名称、外键在all_constraints 索引在all_indexes 但主键也会成为索引,所以主键也会在all_indexes里面。 具体需要的字段可以DESC下这几个view,dba登陆的话可以把all换成dba 1、查找表的所有索引(包括索引名,类型,构成列): select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = 要查询的表 2、查找表的主键(包括名称,构成列): select cu.* from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'P' and au.table_name = 要查询的表 3、查找表的唯一性约束(包括名称,构成列): select column_name from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'U' and au.table_name = 要查询的表 4、查找表的外键(包括名称,引用表的表名和对应的键名,下面是分成多步查询): select * from user_constraints c where c.constraint_type = 'R' and c.table_name = 要查询的表查询外键约束的列名: select * from user_cons_columns cl where cl.constraint_name = 外键名称查询引用表的键的列名: select * from user_cons_columns cl where cl.constraint_name = 外键引用表的键名 5、查询表的所有列及其属性 where t.table_name = c.table_name and t.column_name = c.column_name and t.table_name = 要查询的表


当前文章:oracle怎么表主键和,oracle查看表主键语句
网站地址:http://ybzwz.com/article/hdsedo.html