了解如何使用自动增量功能在xml架构中实现主键

时间:2009-08-10 12:14:00

标签: xml schema auto-increment primary-key

一开始我写了一个c#类。然后我使用“xsd.exe”工具为该类创建了一个模式。我将此架构发布到我的数据库的架构集合中,并创建了一个新的xml列:

创建XML SCHEMA COLLECTION AppointmentSC AS'无法在论坛中插入架构' GO

ALTER TABLE Adresse ADD xmlAppointment XML(AppointmentSC); GO

现在我可以将我的类的对象序列化/反序列化到我的数据库中。 在下一步中,我想将我的类的多个对象保存到数据库中。我可以为我的类创建一个集合,但我也想用sql添加新对象。我想我需要一个自动增量ID或一个主键或类似的东西。每次尝试在我的架构中创建唯一ID都是没有希望的。

我正在使用Visual Studio 2008和SQL Server 2008

最好的问候 莱蒙德

1 个答案:

答案 0 :(得分:-1)

我认为您可能会混淆数据库架构的XML Schema。虽然他们都有相同的工作,但他们在完全不同和无关的世界中运作。数据库具有主键,逻辑上应该是数据库模式。标记没有主键,只有枚举作为元数据,因此没有您在XML Schema语言中寻找的约定。

您似乎正在尝试将数据库导出到尝试为其编写架构的XML实例中。如果是这种情况,那么您必须接受标记提供与数据库表完全不同且无关的功能。在数据库结构中,与列标签关联的元数据,其他表的继承等隐含在数据库结构中。在标记结构中,使用元数据明确声明,该元数据在数据/内容的位上导出描述性结构,其中元数据可能会或可能不会直接描述数据。

这里的问题不是技术问题。您只需练习手动编写XML Schema语言并从这些模式生成实例文档,以了解标记模式与数据库模式的差异,优点和缺点。