我正在写一个C#应用程序与SQL Server CE接口,但我遇到了CE的许多限制之一。我的数据库有表Customer
,List
和CustomerList
。客户可以订阅许多列表,列表中可以有许多客户 - 因此我将客户列表表格作为联结表(列为CustomerListId
,CustomerId
,ListId
- 就这些了)。subquerying在SQL Server CE
该设计是我们有一个主列表,将永远列出每个客户。
因此,在我的代码中,我正在编写一个函数,将所有列出的客户设置为订阅主列表。这是我很简单的SQL查询:
insert into customerlist (CustomerId, ListId)
values (
(select customerid from customer),
(select 1 from list where ShortDesc='Master'))
此查询没有在SQL Server CE的工作,我绞尽脑汁试图找到不涉及一个痛苦的一种替代的for-each行由行代码。任何想法将不胜感激。
也许我还不够清楚。所有客户都需要插入到名为'Master'的特定列表中。这个列表是通过名称来识别的,而不是ID(我知道这并不完美,但我写了代码以确保不会有重复)。因此,我需要一个插入特定“主”列表的查询。 –
仍然困惑 - 你有一个名为主名单(ID 1我假设)。那么上面的内容会将每个客户的单个记录插入到该客户列表表中。 – sgeddes
否主列表的ID未知。然而,只会有一个主列表,我的C#代码可以确保这一点。 –