• 主页
  • 基础类
  • 应用实例
  • 新技术前沿

大哥,请再帮忙!!!

NoReady 2003-11-26 09:06:17
我有几个表,想对其增加约束
如tblA
f1,f2,f3,f4

tblB
f5,f6,f7

1、想将tblB中的f5列变为主键并是tblA的外键,对f1进行引用
用alter table如何写
2、想在tblB中增加一列f8,使其成为主键并是tblA,对f1进行引用

请问如何实现上述两种情况???
...全文
4 点赞 收藏 14
写回复
14 条回复
seekmoon 2003年12月01日
ding
回复 点赞
shuiniu 2003年11月26日
--新增一列主键有外键
alter table tblb add f8 int default 0 primary key
foreign key(f8) references tbla(f1)
回复 点赞
NoReady 2003年11月26日
好,谢谢各位
回复 点赞
shuiniu 2003年11月26日
即同时修改类型长度,主键,外键等
一句话!
用alter table语句一句话写不行!
回复 点赞
shuiniu 2003年11月26日
重命名列
例如:
下例将表 customers 中的列 contact title 重命名为 title。
EXEC sp_rename 'customers.[contact title]', 'title', 'COLUMN'

回复 点赞
shuiniu 2003年11月26日
alter table tblb add f8 int identity primary key --不为空
alter table tblb add f8 int default 0 primary key --有默认值
回复 点赞
NoReady 2003年11月26日
请问能修改字段名称吗?我主要是想把它们写在同一句中:
即同时修改类型长度,主键,外键等。
回复 点赞
shuiniu 2003年11月26日
alter table alter column 列 new_data_type
-------------------------------------------------
new_data_type
是要更改的列的新数据类型。要更改的列的 new_data_type 应符合下列准则:
1.原来的数据类型必须可以隐式转换为新数据类型。
2.new_data_type 类型不能为 timestamp。
3.对 ALTER COLUMN,ANSI 空默认值始终打开;如果没有指定,列将可为空。
4.对 ALTER COLUMN,ANSI 填充始终打开。
5.如果要更改的列是标识列,new_data_type 必须是支持标识属性的数据类型。
6.将忽略 SET ARITHABORT 的当前设置。ALTER TABLE 语句的行为如同 ARITHABORT 选项为 ON 时一样
回复 点赞
tianyxy 2003年11月26日
e.g.:alter table tableName alter column f9 varchar(24) not null
回复 点赞
tianyxy 2003年11月26日
类型描述里头直接写就行了
回复 点赞
tianyxy 2003年11月26日
2、alter table tblB add column f8(列描述) primary key
回复 点赞
shuiniu 2003年11月26日
2.
alter table tblb add f8 int identity
alter table tblb add constraint pk_f8 primary key(f8)
alter table tblb add foreign key(f8) references tbla(f1)
回复 点赞
NoReady 2003年11月26日
TO shuiniu(用泪水灌溉幸福)
我能将你说的这两句写为一句吗?
还有我如果要同时修改 类型、长度、是否允许空 呢?

很急啊,谢谢帮忙
回复 点赞
shuiniu 2003年11月26日
1.
alter table tblb add constraint pk_f5 primary key(f5)
alter table tblb add foreign key(f5) references tbla(f1)
回复 点赞
发动态
发帖子
MS-SQL Server
创建于2007-09-28

1.4w+

社区成员

25.3w+

社区内容

MS-SQL Server相关内容讨论专区
社区公告
暂无公告