sql-server - 在 SQL Server 中定义一对一关系

标签 sql-server linq

我需要定义一对一关系,但似乎无法在 SQL Server 中找到正确的方法。

您问为什么是一对一关系?

我使用 WCF 作为 DAL (Linq),并且有一个包含 BLOB 列的表。 BLOB 几乎不会改变,每次查询时传输它都会浪费带宽。

我查看了this solution ,虽然这看起来是个好主意,但我发现 Linq 在尝试实现这种方法时有点嘶嘶作响。

有什么想法吗?

最佳答案

一对一实际上经常用于父类型/子类型关系。在子表中,主键也充当父表的外键。这是一个示例:

org_model_00

CREATE TABLE Organization
( 
     ID       int PRIMARY KEY,
     Name     varchar(200),
     Address  varchar(200),
     Phone    varchar(12)
)
GO

CREATE TABLE Customer
( 
     ID              int PRIMARY KEY,
     AccountManager  varchar(100)
)
GO

ALTER TABLE Customer
    ADD  FOREIGN KEY (ID) REFERENCES Organization(ID)
        ON DELETE CASCADE
        ON UPDATE CASCADE
GO

关于sql-server - 在 SQL Server 中定义一对一关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1722741/

相关文章:

c# - LINQ 大于列表中的任何值

c# - 如何使用 group by 数据创建 Left Join

c# - LINQ - 完全外部连接

sql-server - 如何优化这个查询?

c# - 如果任何列值为空,则删除数据表行c#

c# - AsParallel() 顺序执行

sql - 在 SQL Server 中执行日期/时间减法

php - PHP 和 mssql 库可以从 varchar 列中选择超过 256 个字符吗?

sql-server - 在 MSSQL Server 中将名字数据生成为首字母缩写

SQL - STRING_SPLIT 字符串位置