继续昨天的折腾(Oracle修改主键约束),删掉主键约束后,发现唯一索引并未删掉.仔细看了下,主键约束跟唯一索引名称不一样,这说明是先创建了唯一索引,后创建的主键约束.我们来试验下: SQL> create unique index PK_T_INVITEE_RECORD_TEST on T_INVITEE_RECORD_TEST(INVITEEMSISDN, INVITERMSISDN, ACTIVITYID) tablespace TBS_VCODE_IDX; Index created S…
创建.删除唯一约束: db2 "alter table tabname add unique(colname)" db2 "alter table tabname drop unique CONSTNAME " 创建主键约束: db2 "alter table staff add primary key (id)" db2 "alter table t_da_jkda_rkxzl drop primary key"…
分类: DB 2011-12-03 21:34 611人阅读 评论(0) 收藏 举报 oracleconstraintsimmutableusertabledomain 1.  分别用两种方法创建主键 create table test1(id number,name varchar2(10)); insert into test1 values(1,'t1'); insert into test1 values(2,'t2'); commit; alter table test1 add co…
http://www.shangxueba.com/jingyan/122163.html主键:  1.主键约束: 一个表只能有一个主键约束.主键可以是单个字段,也可以是多个字段.无论是哪种情况,其所有字段都是NOT NULL.  2.Unique约束:一个表可以有多个Unique约束,Unique的字段可以为NULL.  3.主键与Unique:不同点在于一个表只能有一个主键约束,但是可以有多个Unique约束:主键所有字段都是not null,unique可以是null:相同点在于都能保证唯…
项目需求,有张表,原有三个联合主键,现在需要再加一个字段进去,而恰恰这个字段可以为空的.去数据库捞了一把,还好数据都不为空: SQL> select count(*) from t_wlf_record t where t.acceptinvitetime is null; COUNT(*) ---------- 那么我们需要先把这个字段修改为非空字段: alter table T_WLF_RECORD modify ACCEPTINVITETIME not null; 接着才能修改主键约束,约…
从网上找到了下面一段代码: declare @Pk varchar(100);select @Pk=Name from sysobjects where Parent_Obj=OBJECT_ID('表名') and xtype='PK';if @Pk is not nullbegin exec('Alter table 表名 Drop '+ @Pk) --删除原主键end 这里的重点是表sysobjects,sysobjects表是系统表,在数据库内创建的每个对象(约束.默认值.日志.规则.存储…
truncate table menu SELECT * FROM sys.foreign_keys WHERE referenced_object_id=OBJECT_ID('menu'); --找到引用该表的外键 --ALTER TABLE dbo.XX DROP constraint FK_User_XX ALTER TABLE dbo.RoleMenu DROP constraint FK_Menu_RoleMenu --删除外键 select * from sys.foreign_ke…
//增加一个库下面所有表的row_id和其他9个字段的存过 DELIMITER $$ USE `erptest`$$ DROP PROCEDURE IF EXISTS `UPTABLE`$$ CREATE DEFINER=`root`@`localhost` PROCEDURE `UPTABLE`() BEGIN declare _tableName varchar(50); declare _done int default 0; declare _cur cursor for select…
1,主键约束创建索引 作为Primay Key的列是唯一的,非空的,Sql Server在创建主键约束时,自动为主键列创建一个唯一索引,并且索引列不允许为null. create table dbo.test ( id int primary key nonclustered , code int ) create table dbo.test2 ( id int primary key clustered , code int ) 查看Sql Server为主键约束创建的索引 select o…
  添加语法如下: “ALTER TABLE table_name ADD CONSTRAINT pk_table_name PRIMARY KEY(列名1,列名2):” [示例1]假设订房信息表(Orderinfo),没有创建主键,现在需要将Orderinfo表中的customerID和OrderID两列设置成主键.创建的语法如下: “ALTER TABLE ORDERINFO ADD CONSTRAINT pk_orderinfo PRIMARY KEY(customerID,OrderID…