当前位置: 代码迷 >> Sybase >> sysbase 数据库 的 增加主KEY的脚本语言如何写
  详细解决方案

sysbase 数据库 的 增加主KEY的脚本语言如何写

热度:6914   发布时间:2013-02-26 00:00:00.0
sysbase 数据库 的 增加主KEY的脚本语言怎么写
表im_imir_check_detail
已有三个主KEY
再把列 check_batch 变为主KEY

------解决方案--------------------------------------------------------
怎么会有三个primary key ?一个表只应该有一个主键约束吧

alter table 表 add constraint 主键名称 primary key clustered (列名)
------解决方案--------------------------------------------------------
SQL code
--示例 1 为表添加列。Adaptive Server 为表中每个现有行分配一个 NULL--列值:alter table publishersadd manager_name varchar(40) null--示例 2 向表中添加 IDENTITY 列。Adaptive Server 为表中每个现有行分--配一个唯一的顺序列值。请注意,IDENTITY 列的类型为 numeric,标度--零。精度确定可插入到列中的最大值(10 5 - 1 或 99,999):alter table sales_dailyadd ord_num numeric(5,0) identity--示例 3 向 authors 表添加主键约束。如果表上有现有的主键或唯一约--束,请首先删除现有的约束(见示例 5):alter table authorsadd constraint au_identificationprimary key (au_id, au_lname, au_fname)--示例 4 在 authors 上创建索引,设置 reservepagegap 值为 16,在索引中--每 15 个分配的页留一个空白页:alter table authorsadd constraint au_identificationprimary key (au_id, au_lname, au_fname)with reservepagegap = 16--示例 5 删除 au_identification 约束:alter table titlesdrop constraint au_identification--示例 6 删除 authors 表中 phone 列的缺省约束。如果列允许空值,则没--有指定值时会插入空值。如果列不允许空值,则不指定列值的插入操作--将失败:alter table authorsreplace phone default null--例 7 为 titleauthor 表创建 4 个新的页链。将表分区后,现有的数据会保留在第一个分区。但是新的行会插入到所有这 5 个分区中:alter table titleauthor partition 5--示例 8 并置 titleauthor 表的所有页链,然后将其重新分区为 6 个分区。alter table titleauthor unpartitionalter table titleauthor partition 6--示例 9 将 titles 表的锁定方案更改为数据行锁定:alter table titles lock datarows--示例 10 将非空列 author_type 添加到缺省值为 primary_author 的 authors 表:alter table authorsadd author_type varchar(20)default "primary_author" not null--示例 11 从 titles 表删除 advance、notes 和 contract 列:alter table titlesdrop advance, notes, contract--示例 12 将 authors 表的 city 列修改为缺省值为空值的 varchar(30):alter table authorsmodify city varchar(30) null--示例 13 将 stores 表的 stor_name 列修改为非空。注意其数据类型varchar(40) 不变:alter table storesmodify stor_name not null--示例 14 修改 titles 表的 type 列,并将 titles 表的锁定方案从所有页锁定--更改为数据行锁定:alter table titlesmodify type varchar(10)lock datarows--示例 15 将 titles 表的 notes 列由 varchar(200) 修改为 varchar(150),将缺省--值由空更改为非空,并指定 exp_row_size 值为 40:alter table titlesmodify notes varchar(150) not nullwith exp_row_size = 40--示例 16 添加、修改和删除一列,然后在同一查询中添加另一列。改变--锁定方案,并指定新列的 exp_row_size 值:alter table titlesadd author_type varchar(30) nullmodify city varchar(30)drop notesadd sec_advance money default 1000 not nulllock datarowswith exp_row_size = 40