我有活动和照片,然后评论两者.现在,我有两个评论表,一个用于与事件相关的评论,另一个用于照片评论.架构与此类似:
CREATE TABLE EventComments
(
CommentId int,
EventId int,
Comment NVarChar(250),
DateSubmitted datetime
)
CREATE TABLE PhotoComments
(
CommentId int,
PhotoId int,
Comment NVarChar(250),
DateSubmitted datetime
)
Run Code Online (Sandbox Code Playgroud)
我的问题是我是否应该将它们组合起来,并添加一个单独的交叉引用表,但我想不出有办法正确地做到这一点.我觉得这应该没事,你有什么想法?
编辑
根据沃尔特的回答(以及一些轻读),我想出了这个:
CREATE TABLE Comments
(
CommentId int,
Comment NVarChar(250),
DateSubmitted datetime
CONTRAINT [PK_Comments] PRIMARY KEY
(
CommentId
)
)
CREATE TABLE EventComments
(
CommentId int,
EventId int
)
CREAT TABLE PhotoComments
(
CommentId int,
PhotoId int
)
ALTER TABLE EventComments ADD CONSTRAINT FK_EventComments FOREIGN KEY (CommentId) REFERENCES Comments(CommentId)
ALTER TABLE PhotoComments …Run Code Online (Sandbox Code Playgroud) 我最近了解了我的信息学课程中的规范化,并且我正在开发一个使用SQLite作为后端数据库的多人游戏.
有关它的一些信息:
简化的结构看起来有点像下面这样:
player_id | level | exp | money | inventory
---------------------------------------------------------
1 | 3 | 120 | 400 | {item a; item b; item c}
Run Code Online (Sandbox Code Playgroud)
好的.如您所见,我将以字符串形式将表/数组存储在"inventory"列中.这违反了规范化.
但问题是:为玩家的库存制作额外的桌子对我来说只是一个缺点!
当玩家加入时,我从数据库加载他的数据并将其存储在内存中.保存播放器时,我每隔五分钟就会写一次DB.所以我的脚本中实际上只有很少的SQL查询.
如果我在加载时使用了额外的表格,我将不得不:
保存时:
如果我将所有玩家数据保存在一个表中:
我现在应该怎么做?
我的论点和情况是否有理由反对正常化?
您对数据库规范化的步骤和准则是什么?如果给一群具有良好计算机和逻辑技能的人,你如何向他们解释如何规范数据库设计?获取属性列表(字段)并将该列表转换为1NF数据库的思考过程是什么?2NF?3NF?
我有一张约1,000条记录的表格.其中大约一半将使用包含某些特征的一组字段.大约有10个相关领域.另一半记录不需要填写这些信息.
该表是数据库的核心,将占用大部分操作.虽然只有大约1,000条记录,但并不多.
存储数据库的硬件既旧又慢(旋转硬盘而不是SSD ......)所以我希望有一个相当优化的结构来充分利用它.显然,由于空白字段而单独增加数据库的大小并不是一个主要问题,但如果它减慢了查询的速度,那么这并不好.
我想我应该描述一下设置.目前Access 2007客户端和Access后端,虽然后端将很快转移到SQL服务器.目前后端位于主服务器机架上,但当移动到SQL Server时,它将获得自己的旧服务器机架.
那么我应该创建一个单独的表来存储上述特征集,还是应该保留原样?
database ms-access database-design ms-access-2007 normalization
注意:这个问题已于11/19/12重新定义,以供澄清.我通常在这里没有太多问题,但努力为客户端站点设计新的产品系统.我们提供一套产品,每个客户都可以向他的客户销售.我们可能会随时添加新产品,但它们都遵循以下格式:
使用之前的结构给出一个真实世界的例子:
上面的列表显然仍在继续,可以更大,更大,但它提供了整体的想法.
目前,我正在存储特定客户可以在单个平面格式表中销售的产品类型,如下所示:
ID | clientID | categoryID | typeID | productID | customURL
=============================================================
1 | 111 | 1 | 1 | 1 | 1111
2 | 111 | 1 | 2 | 2 | 2222
3 | 111 | 1 | 2 | 3 | 3333
4 | 111 | 2 | 3 | 4 …Run Code Online (Sandbox Code Playgroud) 问题: 我遇到的问题是在选择模型中获得选项的价格.这是因为,根据哪些其他选项也在同一购物车中,将使用不同的价格来生成总数.我需要一个查询集的帮助,它可以获得Option的价格,如果该选项有一个effector_option,它本身在同一个购物车中,使用它,否则使用Variation只有选项字段集.
TempName App模型包括:
class Section(models.Model):
title = models.CharField(max_length=20)
description = models.CharField(max_length=100)
temp = models.ForeignKey(TempName, null=False)
def __str__(self):
return self.title
def get_options(self):
return self.option_set.all()
class Option(models.Model):
name = models.CharField(max_length=120)
section = models.ForeignKey(Section, null=False)
def __str__(self):
return self.name
def get_variations(self):
return self.variation_set.all()
class Variation(models.Model):
name = models.CharField(max_length=60, blank=True, unique=True)
price = models.DecimalField(max_digits=5, decimal_places=2)
option = models.ForeignKey(Option, null=False)
effector_option = models.ForeignKey(Option, null=True, blank=True, related_name='option_effected')
def __str__(self):
return self.name
Run Code Online (Sandbox Code Playgroud)
一页上可以有很多章节.每个 …
django normalization django-models django-queryset database-normalization
如果我需要在数据库中表示位置(例如国家,州/省/地区,城市等),我将如何以最容易查询,扩展最多等方式这样做. .?我计划将此用于允许用户选择多个位置并将其与其个人资料相关联的应用程序.
想到的解决方案是这样的:
===========================
| Id | ParentId | Name |
===========================
| 1 | 0 | USA |
---------------------------
| 2 | 1 | Alabama |
---------------------------
Run Code Online (Sandbox Code Playgroud)
我想知道这种解决方案是否存在任何潜在问题.谢谢.
我想在 PyTorch 中对张量执行最小-最大归一化。
获得最小-最大归一化的公式是
我想使用一些元素对张量执行最小-最大归一化new_min,new_max 而不迭代张量的所有元素。
>>>import torch
>>>x = torch.randn(5, 4)
>>>print(x)
tensor([[-0.8785, -1.6898, 2.2129, -0.8375],
[ 1.2927, -1.3187, -0.7087, -2.1143],
[-0.6162, 0.6836, -1.3342, -0.7889],
[-0.2934, -1.2526, -0.3265, 1.1933],
[ 1.2494, -1.2130, 1.5959, 1.4232]])
Run Code Online (Sandbox Code Playgroud)
有没有办法对两个值之间的给定张量进行最小-最大归一化new_min, new_max?
假设我想将张量从 缩放new_min = -0.25到new_max = 0.25
我试图将希伯来语单词分成 C# 中的字母,但 ToCharArray() 将变音符号分开,就好像它们是单独的字母一样(但事实并非如此)。我可以选择将字母与变音符号保持完整,或者在最坏的情况下完全删除变音符号。
\n示例: \xd7\x9b\xd6\xbc\xd6\xb6\xd7\x9c\xd6\xb6\xd7\x91 显示为 6 个不同的字母。
\nnormalization ×10
database ×2
sql ×2
c# ×1
diacritics ×1
django ×1
hebrew ×1
ms-access ×1
mysql ×1
python ×1
pytorch ×1
sql-server ×1
theory ×1