社区
MS-SQL Server
帖子详情
不是主键的字段,在两个表中,怎么建立他们的关系?
baisun
2003-09-11 02:44:21
通道表channel
有字段id,channelid,channelname
A表
有字段id,channelid,field1,field2
B表
有字段id,channelid,field3,field4
现在,我想:在A,B建立关系,使得在B中channelid出现的记录值不能是A中channelid的值没有的,就是说B中不能出现A中没有的channelID
怎么弄?
...全文
133
9
打赏
收藏
不是主键的字段,在两个表中,怎么建立他们的关系?
通道表channel 有字段id,channelid,channelname A表 有字段id,channelid,field1,field2 B表 有字段id,channelid,field3,field4 现在,我想:在A,B建立关系,使得在B中channelid出现的记录值不能是A中channelid的值没有的,就是说B中不能出现A中没有的channelID 怎么弄?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
baisun
2003-09-11
打赏
举报
回复
pengdali(大力 V3.0) 的触发器是对的。
sdhdy(大江东去...) 的最后有点理解不对。
yoki(小马哥) ,你加了又有什么用?
yoki
2003-09-11
打赏
举报
回复
b表加多一列A_ID
依赖于a表ID
baisun
2003-09-11
打赏
举报
回复
不能做唯一索引,因为记录里channelid可以重复的
伍子V5
2003-09-11
打赏
举报
回复
不是说唯一索引就可以见关联么
不过我没有用过
baisun
2003-09-11
打赏
举报
回复
看来必须用触发器了?
触发器效率以及消耗如何?
一次insert数据量大时,触发器能应付自如吗?
sdhdy
2003-09-11
打赏
举报
回复
create trigger tri_insert_B表 on B表
instead of insert
as
if exists(select a.channelid from A表 a,inserted b where a.channelid=b.channelid)
insert B表 select * from inserted
pengdali
2003-09-11
打赏
举报
回复
CREATE TRIGGER 名1 ON B
FOR insert,update
as
if exists(select 1 from inserted where channelid not in (select channelid from a))
rollback tran
baisun
2003-09-11
打赏
举报
回复
CrazyFor(蚂蚁) ,除了触发器。。。
CrazyFor
2003-09-11
打赏
举报
回复
建立触发器.
在一
表中
设置组合
主键
(
两个
字段
组合成一个
主键
)
首先一个表是不能有
两个
主键
的。但是可以有
两个
字段
组合成一个
主键
,这就是为什么有时候表里为什么会有
两个
字段
都有
主键
的标志,那是因为他们组合成了一个
主键
了。 我们可以先删除了原来的
主键
再用TSQL建alter table tablename add constraint pk_name primary key ...
oracle中查看一张表是否有
主键
,
主键
在哪个
字段
上
1. 利用Oracle中系统自带的
两个
视图可以实现查看
表中
主键
信息, 语句如下: select a.constraint_name, a.column_name from user_cons_columns a, user_constraints b where a.constraint_name = b.constraint_name and b.constraint_type = 'P' and a.table_name = '大写的表名' 查看表的
主键
约束名称,以及
主键
约束的
字段
名称。...
一个或
两个
字段
作为表的唯一约束(
主键
)
两个
字段
分别
建立
唯bai一约束,数据库单du独验证每个
字段
中值zhi的唯一性,
两个
字段
一起
建立
唯一约dao束,数据库将
两个
字段
值合并后验证唯一性。例如
关系
R(a,b)的
两个
记录r1(1,2)和r2(1,3),如果分别
建立
唯一性约束,这
两个
记录是不能同时存在的,但一起
建立
唯一约束则是可以同时存在的
主键
:a b c d …
主键
: (a+b) (a+c) (b+c) … ...
【MySQL】复合
主键
每个
主键
字段
都能使用索引吗?可重复插入吗?
【Mysql】复合
主键
,每个
主键
字段
都能使用索引吗?可重复插入吗? 文章目录【Mysql】复合
主键
,每个
主键
字段
都能使用索引吗?可重复插入吗?一、
主键
1.1 创建
主键
1.2 删除
主键
二、复合
主键
2.1 Question2.2 实验环境2.3 实验验证2.4 实验结论3 符合
主键
的唯一性 一、
主键
primary key用来唯一约束该
字段
里面的数据。其主要特征有: ● 不能重复,不能为空 ● 一张
表中
最多只有一个primary key ● primary key 所在列通常是整数类型 1.
一个数据库
表中
有多个
字段
和另一个
表中
的
主键
对应,sql如何查询?
现在这里有
两个
表: stock_dismantle stock_info 其中stock_dismantle中的后
两个
字段
都是从stock_info的
主键
id中获取的,那么这时连表查询怎样才能同时找到stock_id_first和stock_id_second对应的stock_info里的信息呢? 要连两次表,并给表起别名 SELECT stock_dismantle.id, stock_...
MS-SQL Server
34,590
社区成员
254,589
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章