由于缺乏SQL Server经验,我遇到了一些问题。
我现在面临的问题是我需要将数据插入主表,而我的数据库方案基于“雪花方案”..
我在了解将数据添加到主表时要做什么时遇到问题。我的奴隶表(我有超过6个),其中大部分包含外键应该更新/如果数据不存在,id(在master-table中递增)也应该插入到从表中。
我想也许一个解决方案可能是使用触发器。有人可以给我一些提示吗?
答案 0 :(得分:0)
呀。 RTFM。并抓住一些关于数据仓库设计的书籍。特别关注数据加载场景。
非平凡情景中的普遍共识似乎来自我的工作经验,而不是通过多步加载过程自动执行此操作。
您通常将数据加载到临时表(登台表)中,然后处理运行并填写相关表中的缺失信息FIRST。然后使事实表(即雪花中的中央表)最后插入。
您遇到的根本问题是无法将魔术数据插入相关的从属表(因为您调用它),因为插入语句中没有数据。即您必须在插入中具有正确的ID,并且您必须实际知道要在从属表中填写哪些其他字段。自动级联将不会允许后者,从根本上使它成为一个死胡同。
这不是特定于SQL Server的问题。我们在这里讨论数据库工作的基本概念。