我有以下表格:
Blogs { BlogName }
BlogPosts { BlogName, PostTitle }
Run Code Online (Sandbox Code Playgroud)
根据6nf(根据第三个宣言),博客帖子同时对实体和关系建模是无效的.
在6nf中,它将是:
Blogs { BlogName }
Posts { PostTitle }
BlogPosts { BlogName, PostTitle}
Run Code Online (Sandbox Code Playgroud)
如果我想通过序列nbr(仅作为示例)订购博客帖子,那将是另一个表
BlogPostsSorting { BlogName, PostTitle , SortOrder }
Run Code Online (Sandbox Code Playgroud)
我说得对吗?
sql normalization relational-database database-normalization 6nf
我在1NF形式的DBMS中读过类似下面的内容.
有一句话如下:
"每列都应该是原子的."
任何人都可以通过一个例子向我解释一下吗?
任何人都可以提供一些示例,说明在 SQL 数据库中何时将一对一关系保留在同一个表上是更好的选择,而何时将它们放在单独的表上更有意义?
数据库将通过克服读写冲突(使用锁定)自动找出如何并行处理两个或多个事务(作为可序列化的计划)。默认情况下,它们之间是隔离的。
那么为什么我们仍然需要使用类似这样的语句来锁定数据库中的任何数据呢SELECT FOR UPDATE?为什么我们不能在交易块中进行我们想要的任何操作?
Begin transaction
//queries
//commit
End transaction
Run Code Online (Sandbox Code Playgroud) 假设我有一个列出项目和属性的表格,
frog green
cat furry
frog nice
cat 4 legs
frog 4 legs
Run Code Online (Sandbox Code Playgroud)
从items列我想选择具有绿色和4个腿属性的唯一对象.在这种情况下,我希望能够回到青蛙对象.执行此操作的最有效查询是什么?
我有一个jquery脚本,它将click事件附加到每个链接,在单击链接时运行一个动作.这一直很有效,但我得到了一些反对意见,这些反馈正在挫败我.
用户右键单击链接并在新选项卡中打开它.当她这样做时,jquery没有捕获点击.坏用户.我用cmd-click再现了这个.
有没有办法捕捉这些手势,或者这是一个固有的限制?
我正在阅读Itzik Ben-Gan,Lubor Kollar,Dejan Sarka和Steve Kass撰写的有关Codd 在Microsoft SQL Server 2008内部的八个原始运算符:T-SQL查询的内容,并且不了解Divide运算符。
引号定义了Divide运算符:
除数关系用于划分股息关系并产生商关系。商关系由除数表中一列的值组成,第二列包含除数中的所有值。”
该声明与Wikipedia的定义和示例一致。
“为除法运算的计算公式包括三个关系:一个 除以b每Ç,其中一个是被除数,b是除数,并且Ç是介体关系。让关系a具有属性A,关系b具有 属性B。除法运算符返回一个关系,该关系包括除数的所有元组,这样对于除数关系的所有元组,元组{A,B}出现在介体关系中。”
下图用于演示此语句。我相信这些关系按以下顺序表示:分红,除数,调解器和最终结果。

第二个关系(除数)具有用于元组的{a,x},{a,z},{b,x}和{b,z}。我的思考过程如下:由于存在元组{b,x}和{b,z},因此应在最终结果中包括b。我已经在该书的网站上检查了该书的更正(在本文开头链接),并且确定我错了。
为什么图示例a而不是a和b的结果?
每当我们面前有任何查询描述时,我们都会尝试应用启发式和头脑风暴来构建查询。
是否有任何系统的分步或数学方法可以根据给定的人类可读描述构建 SQL 查询?
例如,如何确定 SQL 查询是否需要联接而不是子查询、是否需要 group by、是否需要 IN 子句等等。
例如,任何研究数字电子学的人都会知道卡诺图或奎因·麦克劳斯基方法等方法。这些是简化数字逻辑的一些系统方法。
是否有类似这样的方法来手动分析sql查询以避免每次头脑风暴?
我正在尝试为我的项目管理软件绘制一个ER图,描述以下内容。它包含以下实体:
和:
一个项目可以分为任务。(任务可以由管理员用户创建,管理员用户可以将这些任务分配给选定的项目。这里仅将任务分配给项目,而没有将员工分配给项目。)
可以将员工分配到项目。
(可以将员工分配到项目。这里仅将员工分配到项目,而没有分配到项目任务。)
对于选定项目的选定任务,我们可以从资源池中分配员工-在2中分配给该项目的员工。(这一次,我们必须指定项目,任务和员工;所有3个选择都是必需的。)
上面1、2和3的输入过程可以在系统的单独页面中完成。您可以先选择其中的任何一个。
对于以上关系,我创建了此ERD:
考虑
是否需要两个单独的关系(如ER图中的关系,关系1和关系2)?
要么
我们还可以仅使用项目,员工和任务之间的关系3,而不使用关系3吗?
database database-design entity-relationship relational-database database-schema
sql ×7
database ×4
6nf ×1
atomic ×1
divide ×1
foreign-keys ×1
heuristics ×1
javascript ×1
jquery ×1
oracle ×1
oracle12c ×1
relational ×1