在同一个数据库一张表的修改,同步到另一张表

ww7433574 2011-06-21 12:26:55
比如说在 (员工信息表) 和 (员工工资表) 里面 原本张三的性别是 男 现在在(员工信息表)改成女后 ,(员工工资表)里面张三的性别还是男, 要怎么实现同步 ,谢谢 求代码 触发器没学 ,学了简单的存储过程
...全文
400 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
-晴天 2011-06-21
  • 打赏
  • 举报
回复
你可以在存储过程中先改员工信息表,接着立即再改员工资表.
也可以用触发器修改:
create table 员工信息表(id int,姓名 nvarchar(10),性别 nvarchar(1))
create table 员工工资表(id int,姓名 nvarchar(10),性别 nvarchar(1),工资 int)--不管其他列
insert into 员工信息表 select 1,'张三','男'
insert into 员工工资表 select 1,'张三','男',3000
go
create trigger setygxb
on 员工信息表
for update
as
update a set 性别=b.性别 from 员工工资表 a inner join inserted b on a.id=b.id
go
update 员工信息表 set 性别='女' where 姓名='张三'
select * from 员工工资表
/*
id 姓名 性别 工资
----------- ---------- ---- -----------
1 张三 女 3000

(1 行受影响)

*/
go
drop table 员工工资表,员工信息表
--小F-- 2011-06-21
  • 打赏
  • 举报
回复
如果有外键 还可以使用级联删除 这个直接去查查 

一般是可以使用触发器

create trigger my_tri on 员工信息表
for update
as
update a set 性别=b.性别 from 员工工资表 a inner join inserted b on a.id=b.id
go
update 员工信息表 set 性别='女' where 姓名='张三'
老潘 2011-06-21
  • 打赏
  • 举报
回复
1.触发器
2.存储过程里面同步更新
3.在 性别 列上建立外键,启用级联更新
cd731107 2011-06-21
  • 打赏
  • 举报
回复
(员工信息表) 和 (员工工资表)通过id关联
1.修改员工信息表中张三的性别
update 员工信息表 set 性别='女' where name='张三'
2.继续修改员工工资表中张三的性别
update 员工工资表 set 性别='女'
from 员工信息表 where 员工信息表.id=员工工资表.id
and 员工信息表.name='张三'

或者如一楼晴天老大那样弄个触发器,员工信息表更新后,
触发器自动更新员工工资表中的相应信息
Lyongt 2011-06-21
  • 打赏
  • 举报
回复
1.可以用触发器实现,楼上的已经回答了;
2.这个是表设计上的问题,如果系统还没有开发,可以改成员工信息表的员工ID和员工工资表的员工ID外键关联,去掉员工工资表中的冗余字段性别
2024 年 Uber 乘车分析数据集 这个综合数据集包含 2024 年 Uber 运营的详细拼车数据,提供了有关预订模式、车辆性能、收入流、取消行为和客户满意度指标的丰富见解。 数据集概述 该数据集捕获了多种车辆类型的 148,770 个总预订,并提供了拼车作的完整视图,包括成功乘车、取消、客户行为和财务指标。 主要统计数据: 总预订量:148.77K 次乘车 成功率:65.96%(93K 完成骑行) 取消率:25%(37.43K 取消预订) 客户取消:19.15%(27K 乘车) 司机取消: 7.45% (10.5K 乘车) 数据模式 数据集包含以下列: 列名称 描述 Date 预订日期 Time 预订时间 Booking ID 每次行程预订的唯一标识符 Booking Status 预订状态(已完成、客户取消、司机取消等) Customer ID 客户的唯一标识符 Vehicle Type 车辆类型(Go Mini、Go Sedan、Auto、eBike/Bike、UberXL、Premier Sedan) Pickup Location 游乐设施的起点 Drop Location 乘车目的地 Avg VTAT 司机到达上车地点的平均时间(以分钟为单位) Avg CTAT 从取件到目的地的平均行程时间(以分钟为单位) Cancelled Rides by Customer 客户发起的取消标志 Reason for cancelling by Customer 客户取消原因 Cancelled Rides by Driver 驱动程序启动的取消标志 Driver Cancellation Reason 司机取消原因 Incomplete Rides 未完成骑行标志 Incomplete Rides Reason 不完整骑行的原因

22,298

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧