同一个表中,同一个字段既是主键,又是外键。同一个字段做另外三张表的外键,怎么写?
2个回答
展开全部
<KeyField foreignField="assetIdentifier">assetIdentifier</KeyField></Key><!--加上下面注释的这一段后,就出现了错误:Error generating bean code from file UC_DEVICEFUNCTION.xml: Error in the Bean UC_DEVICEFUNCTION of Solution SMMS: Duplicated key assetIdentifier
<Key foreignBean="UC_ENDDEVICEASSET" restrict="true">
<KeyField foreignField="assetIdentifier">assetIdentifier</KeyField></Key><Key foreignBean="UC_METERASSET" restrict="true">
<KeyField foreignField="assetIdentifier">assetIdentifier</KeyField></Key>--><Key foreignBean="UC_FIRMWARE" restrict="true">
<KeyField foreignField="FirmwareId">currentFirmware</KeyField></Key></Keys> 补充: 这个 是 关于 HPSA 里面的 ,新建 Inventory的 xml的时候 需要用到的 补充: 同一个表中多个字段,既做主键又做外键的方法:<Keys><Key pk="true" unique="true">
<Name>assetIdentifierAndEndDeviceFunctionId</Name>
<KeyField>assetIdentifier</KeyField>
<KeyField>EndDeviceFunctionId</KeyField></Key><Key foreignBean="UC_DEVICEFUNCTION" restrict="true">
<KeyField foreignField="assetIdentifier">assetIdentifier</KeyField></Key><Key foreignBean="UC_DEVICEFUNCTION" restrict="true">
<KeyField foreignField="EndDeviceFunctionId">EndDeviceFunctionId</KeyField></Key></Keys>补充: 同一个表中的同一个字段,既做主键又做外键的方法:<Keys><Key pk="true" foreignBean="UC_COMEQUIPASSET" includeBean="true" restrict="true">
<KeyField foreignField="assetIdentifier">AssetID</KeyField></Key></Keys>补充: 同一个表中一个字段,既做主键又做多个表的外键的方法:在另外三张表里面分别定义assetIdentifier为外键,即分别在UC_ENDDEVICEASSET、UC_COMEQUIPASSET和UC_METERASSE中加上下面这个key<Keys><Key pk="true" foreignBean="UC_DEVICEFUNCTION" includeBean="true" restrict="true">
展开全部
create table yuangong(--创建表名
cleld nvarchar(10) primary key,--此字段指定为表的主键
cleName nvarchar(10) not null,--不可以为空
cleSex nvarchar(1) check(cleSex='男' or cleSex='女'),--非男即女
cleAge int check(cleAge<=150),--约束年龄
cleZw nvarchar(10)
)
create table yonghu (--创建表名
cleld nvarchar(10) primary key foreign key references yuangong(cleld),--此字段指定为yonghu表的主键,同时也是yuangong(cleld)的外键,此处注意格式问题。
passwd nvarchar(10)
)
cleld nvarchar(10) primary key,--此字段指定为表的主键
cleName nvarchar(10) not null,--不可以为空
cleSex nvarchar(1) check(cleSex='男' or cleSex='女'),--非男即女
cleAge int check(cleAge<=150),--约束年龄
cleZw nvarchar(10)
)
create table yonghu (--创建表名
cleld nvarchar(10) primary key foreign key references yuangong(cleld),--此字段指定为yonghu表的主键,同时也是yuangong(cleld)的外键,此处注意格式问题。
passwd nvarchar(10)
)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询