相关疑难解决方法(0)

数据库存储值的全球化

我们正在使用资源文件 (.resx) 将我们的 .NET 4.5 MVC C# 应用程序翻译成不同的语言。这对于位于我们视图中的静态文本非常有用。但是,我们从 SQL 数据库中提取的值也需要转换。

示例:下拉列表,其中包含从数据库中的表填充的值。

在数据库中翻译这些值的最佳做法是什么?

c# sql-server asp.net-mvc-4

5
推荐指数
1
解决办法
574
查看次数

如何在关系中设置主键?

我想知道如何正确地设置主键关系.例如,我们有ER图表,其中包含元素:

  • 关键属性
  • 弱键属性
  • 识别关系
  • 关联实体

为了将其转换为关系模型,我们应该做一些技巧.上述处理关系的主键,但所有的元素都在自然键 -所以我们可以把它们原样或更换代理键.
考虑一些情况.

情况1

密钥属性是一个名称 - 因此它必须是类型CHARVARCHAR.通常,名称成为关键属性.

案例2

两个(或更多)识别关系成为关系复合主键(由外键组成).

案例3

识别具有弱密钥属性的关系也成为复合主密钥.

案例4

关联实体通常具有两个或多个识别关系,因此它们是连接关系(连接表).

  • 如何为关系设置主键以处理所有上述情况(可能还有一些我没有提及的情况)?

  • 如何避免使用代理键以及在哪些情况下他们是必要的?

  • 如何设置主键的数据类型?

  • 如果必须将复合主键传递给子关系,是否应该用代理替换?

在我的视图中使用代理键的优点和缺点:

好处

  • 它们是紧凑的(通常是类型的INT),有时可以替代复合键

  • 当他们在外国钥匙时,他们是说明性的

  • 他们被无痛地编入索引

缺点

  • 他们是数字而且毫无意义.例如,我希望在我的界面应用程序中填写连接表 - 所以我将别无选择,只能将数字联系起来 …

database database-design entity-relationship relational-database database-schema

3
推荐指数
1
解决办法
1664
查看次数