标签归档:外键

在oracle中创建外键约束的两种方法分享


摘要:
下文讲述在oracle数据库中,创建外键约束的两种方法分享,如下所示:
实验环境:oracle



一、建表时,直接输入外键的相关信息

   ---例:在一张销售明细表上添加外键约束
   create table maomaoDetail(
    qty number(8) not null,
    accName varchar2(60) not null,
    price number(13,2),
    billNo nvarchar(50) not null references maomaoMain(billNo)  --外键约束
);


二、建表后,在创建外键的相关信息

   ---例:在一张销售明细表上添加外键约束
   create table maomaoDetail(
    qty number(8) not null,
    accName varchar2(60) not null,
    price number(13,2),
    billNo nvarchar(50) not null  
);

 ALTER TABLE  maomaoDetail
  ADD CONSTRAINT FK_maomaoDetail_billNO FOREIGN KEY(categoryId ) REFERENCES  maomaoMain(billNo);


/*
注意事项:
在明细表上创建外键约束时,主表maomaoMain必须先创建,然后再建立maomaoDetail表
*/

mssql sqlserver 创建数据库外键的两种方式分享


摘要:
下文通过举例的方式讲述在sqlserver中创建外键的两种方法,如下所示:
实验环境:sql server 2008 R2



方法1:创建表时,创建外键
方法2:创建表后,再通过修改脚本创建外键

----方法1:在创建表 maomao365.comB 时,直接创建外键
create table [maomao365.comA](
   billNo varchar(30),
    info  nvarchar(33)
)
go
create table  [maomao365.comB](
    billNo  varchar(30),
    qty      int,
    constraint fk_billNo FOREIGN KEY(billNo) REFERENCES  [maomao365.comb](billNo)
)
go

go
drop  table [maomao365.comA]
drop table  [maomao365.comB]

go
----方法2:创建表后,再通过sql脚本创建外键
create table [maomao365.comA](
   billNo varchar(30),
    info  nvarchar(33)
)
go
create table  [maomao365.comB](
    billNo  varchar(30),
    qty      int

) 
go
alter table [maomao365.comB] add
     constraint fk_billNo FOREIGN KEY(billNo) REFERENCES  [maomao365.comb](billNo)
 
go
drop  table [maomao365.comA]
drop table  [maomao365.comB]

mssql SQL Server 2008 查询所有表外键信息的方法分享


摘要:
下文讲述sqlserver 2008获取表外键的方法
实验环境:sql server 2008 R2



实现思路:
主要根据系统表 syscolumns, sysobjects, sysforeignkeys
获取外键列的相关信息,如下:

 
   SELECT 
(SELECT name FROM syscolumns WHERE colid=b.rkey AND id=b.rkeyid) 
 as [主键-列名],
object_name(b.rkeyid) as [主键-表名],
object_name(b.fkeyid)  as [外键-表名],
(SELECT name FROM syscolumns 
			WHERE colid=b.fkey AND id=b.fkeyid)  as [外键列名]
FROM sysobjects a join sysforeignkeys b on a.id=b.constid 
	join sysobjects c on a.parent_obj=c.id 
where a.xtype='f' AND c.xtype='U'