【发布时间】:2019-12-07 03:52:28
【问题描述】:
是否可以将多个表中的数据实时复制到一个表中?
例如我有 3 个表:
表:DriverLocation
列:DriverId, Latitude, Longtide, GpsLastUpdate, Speed, ...表:驱动程序
列:DriverId、FirstName、LastName、Address、IsActive、...表:工作
列:JobId、DriverId、JobName、Pickup、Delivery、...
我想在这 3 个表之间创建一个连接查询,并将该数据实时发布到一个名为 RealTimeDriverInfo 的表中。
示例(伪代码):
Driver(FirstName, LastName)
JOIN DriverLocatoin(Latitude, Longitude)
JOIN Job(JobName)
PUT RESULT IN REAL TIME INTO => RealTimeDriverInfo table
这可能吗?
编辑:注意:
我希望数据在一个表中的原因是因为我想使用这个 c# 库从一个表中获取实时通知,这个库只适用于表,不幸的是你不能加入多个表只监视一个表,库是SQLTableDependency
.NET 库,用于监控 SQL 表中的 chagnes(它只能用于表,不能用于视图,您只能监控一个表,而不能连接多个表) https://github.com/christiandelbianco/monitor-table-change-with-sqltabledependency
这就是为什么我需要以某种方式将多个表连接到一个表中
【问题讨论】:
-
你的意思是
Insert into RealTimeDriverInfo () select () from Driver JOIN DriverLocation on ... JOIN Job ..?这取决于您的感受是实时的。每次插入、更新或删除行时,您可以触发数据库系统自动运行的触发器。 -
为什么不创建一个Sql View呢?
-
@MarkKram 我希望数据在表中的原因是因为我想使用这个 c# 库从表中获取实时通知,这个库只适用于表,不幸的是你不能join多表只监控一张表,库是SQLTableDependency(github.com/christiandelbianco/…)
标签: sql .net sql-server