Oracle增加主键 a表设置b列为主键

alter table a add primary key b
alter table a add b primary key
alter talble a add constraint b primary key
alter talble a add constraint primary key(b)
都不行,怎么弄,还试了
alter table a set b primary key
原来只是一个modify

可以通过alter方法,进行修改,通过add primary 的形式来增加主键:
sql: alter table a add constraint pk_a_b primary key (b);
解释:以上语句就是给表a的b列设置为主键,主键的名称就是pk_a_b。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-08-24
alter table A
add constraint PK_A_B primary key (B);

alter talble a add constraint primary key(b)
这一个最接近但是没有写约束的名称本回答被提问者和网友采纳
第2个回答  2011-08-24
ss生生世世是生生世世实施生生世世实施生生世世实施生生世世事实
第3个回答  2011-08-24
alter table a add primary key (b)
试了这么多,都没试到这个,运气也不错哦

oracle怎么实现id自增和设置主键
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,使用如...

Oracle数据库,原表有两个主键。在原有表上新增多个字段,其中一个字段...
先删除主键 alter table 表名 drop constraint 主键名;如果不知道主键名,可以用 SELECT * from user_cons_columns; 来查询 然后增加主键:alter table 表名 add constraint 主键名 primary key(col1,col2,col3);主键列都是不能为空的,所以你新增列,要设置好值后才可以。

oracle中如何设置主键并且让其自动增长
一、自增长主键我创建一个用户的信息表-- Create tablecreate table USERINFO( USERNO NUMBER not null, USERNAME NVARCHAR2(20), USERPWD NVARCHAR2(20))tablespace MYPRODUCT pctfree 10 initrans 1 maxtrans 255 storage ( initial 64K next 1M minextents 1 maxextents unlimited );-- Create\/Re...

如何向Oracle已经有数据的表中增加主键
主键必须保持数据的唯一性,如果你的重复记录能够删除,执行 select a from table group by a having count(a)>1;select * from table where a is null;把重复的值选出删除,执行 alter table tab_a add constraint pk_tab_a primary key(col1)注意primary key 会自动建立一个索引,所在的表空...

oracle 设置俩个主键,而且设置为主键的字段数据竟然还有相同的!而且没...
应该是(GID,GLOBALID) 两个字段一起主键,由这两个字段共同确定唯一一条,单独的gid 或者globalid一样没问题,两个都一样就会报错了,你再加一条76,3169就会报错了

在Oracle数据库中创建一个表,用两个键做联合主键,sql语句该怎么写?_百 ...
create table 表名(a ...,b...,...constraint 约束名 primary key(a,b));如果是已建完表则 去添加 alter table table_name add constraint 约束名 primary key(a,b);

oracle如何通过两个表关联,修改其中一表中某列的数据?
update a set a.e=(select b.h from b where b.g=a.g)where a.g in (select b.g from b)或者 update a set a.e=(select b.h from b where b.g=a.g)where exists (select null from b where b.g=a.g)需要保证a,b表一对一对应关系,如不是不可以这么写 条件那里看需要写...

怎样给oracle视图加一个主键
oracle是可以为视图加主键,写法:create or replace view mylist(myid,insize,outsize,statrtime,endtime,jobid,imeiid,ip,useragent UNIQUE RELY DISABLE NOVALIDATE,CONSTRAINT id_pk PRIMARY KEY (myid) RELY DISABLE NOVALIDATE) as select job.dm_session_id as myid, http.dm_request_...

关于oracle中 根据一个表的主键数据同步更新另一个关联表的字段。
应该有一个A、B两表一一对应的字段,这边假设字段名就是sys_guid UPDATE B SET B.USER_ID = (SELECT ID FROM A WHERE A.sys_guid=B.sys_guid);

oracle表只能具有一个主键
主键是通过SQL语句建立以实体完整性 实现,如果 选择老板,constraint_name命令,从table_name的USER_CONSTRAINTS主人在哪里='用户名'和constraint_type ='P'和TABLE_NAME ='表名';或 张罗着USER_CONS_COLUMNS USER_TAB_COLUMNS:用户名,表名,主键,主键对应的字段名 ...

相似回答