问题标签 [rdbms]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
290 浏览

tags - 机器标签的数据库模式?

机器标签是更精确的标签:http ://www.flickr.com/groups/api/discuss/72157594497877875 。它们允许用户基本上以 object:property=value 格式将任何东西标记为对象

关于实现这一点的 rdbms 模式的任何提示?只是想知道是否有人已经涉足这个。我想架构与在 rdbms 中实现 rdf 三元组非常相似

0 投票
11 回答
135208 浏览

sql - 删除所有表命令

在 SQLite 中删除所有表的命令是什么?

同样,我想删除所有索引。

0 投票
9 回答
14730 浏览

rdbms - 在数据库表中,主键的最大数量是多少?

在数据库表中,主键的最大数量是多少?

0 投票
4 回答
2722 浏览

database - 有关构建 RDBMS 的资源

我正在考虑实施 RDBMS。关于数据库如何在内部工作,以及在开始构建自己的数据库时我需要了解哪些方面的信息,是否有任何好的资源?(请不要评论这是否是一个实用的想法 - 只是想象它是为了一个爱好项目或其他东西)。

再次 - 对 RDBMS 设计感兴趣,而不是数据库设计。效率非常重要(如果我不关心速度,设计某种关系数据库之类的结构似乎相当容易)。

0 投票
5 回答
12705 浏览

database - 在数据库中存储条件逻辑表达式/规则

如何使用 RDBMS 存储逻辑表达式?

我标记对象并希望能够基于这些标记构建真实陈述。(这些可能被视为虚拟标签。)

标签
new
for_sale
used
offer

规则
second_hand_goods = (!new or used) and for_sale
new_offer = new and offer
second_hand_offer = second_hand_goods and offer

  • 规则应该能够引用标签和其他规则。
  • 可以通过 hibernate 轻松访问的模式将是可取的。
  • 最好可以在一次选择/调用中检索整个规则?

你们如何在数据库中存储表达式和业务规则?

提前致谢。

更新
需要明确的是,这些规则不是供数据库内部使用的,而是由需要保留这些标签和规则的外部应用程序创建和使用的。谢谢。

0 投票
1 回答
3309 浏览

sql - 在MySQL中排名,如何在频繁更新和大数据集的情况下获得最佳性能?

我想在一张非常大的桌子上进行分组排名,我已经找到了一些解决这个问题的方法,例如在这篇文章和网络上的其他地方。但是,我无法弄清楚这些解决方案的最坏情况复杂性。具体问题包括一个表格,其中每一行都有一些点和一个关联的名称。我希望能够请求排名间隔,例如 1-4。以下是一些数据示例:

使用这些值创建以下“排名”:

并且应该可以在查询 ID 上创建以下间隔:2-5 给出排名:1、3、4 和 4。

该数据库包含大约 300 万条记录,因此如果可能,我希望避免使用复杂度大于 log(n) 的解决方案。数据库上不断更新和插入,因此这些操作最好也以 log(n) 复杂度执行。我不确定这是否可能,我已经尝试过一段时间了。我得出的结论是二进制搜索应该是可能的,但我无法创建执行此操作的查询。我正在使用 MySQL 服务器。

我将详细说明过滤的伪代码如何工作。首先,需要一个关于 (points, name) 的索引。作为输入,您给出一个 fromrank 和一个 tillrank。数据库中的记录总数为 n。伪代码应如下所示:

找到中点值,计算小于该值的行数(计数给出了粗略估计的排名,不考虑具有相同点数的那些)。如果返回的数字大于 fromrank 分隔符,我们细分前半部分并找到它的中位数。我们一直这样做,直到我们确定 fromrank 应该开始的点数。然后我们使用名称索引在该数量的点内执行相同的操作,并找到中位数,直到我们到达正确的行。我们对tillrank 做同样的事情。

结果应该是 log(n) 的细分数。因此,考虑到中位数和计数可以在 log(n) 时间内完成,应该可以在最坏情况复杂度 log(n) 中解决问题。如果我错了,请纠正我。

0 投票
3 回答
158 浏览

sql - 如何:MySQL 如何根据三个属性检索记录?

我是 SQL 和关系 DBMS 的新手。如果它们满足 3 个给定属性,我想从关系数据库中检索记录。

例如,如果有一个包含有关实体信息的表:

其中 *_id 都是主键。

我还有 3 个表用于将这些表与外键相关联。

请您解释一下我如何加入这些。

提前致谢。

table_length 包含 solid 可以采用的有效长度(与其他表类似)。

0 投票
1 回答
938 浏览

mysql - 在 MySQL 中查找中位数和计数的复杂性是什么?

我想知道以下两个操作的复杂性是什么。第一种情况是计数,我按我有索引的列排序,并询问低于或高于某个数字的所有值的计数,如下所示:

另一种情况是关于中位数操作。中位数是指找到 (int)n/2 的行值,其中 n 是表中的行数。这方面的一个例子可能如下(再次在 col1 上有一个索引):

这些案例中最坏的案例复杂度是多少?

0 投票
3 回答
855 浏览

mysql - 数据库设计问题 - 不同类别的多个分数

假设我有一个服装产品数据库。除了许多其他字段外,数据库还需要存储每个产品的不同类别的评分(满分 10 分)。

例如,一个类别可以是“场合”。场合可能如下:

穿去办公室 穿去参加婚礼 穿去约会... 穿去参加葬礼

每个产品都需要为每个产品分配 10 分。因此,一种产品可能具有:

办公室:5 婚礼:7 日期:10 葬礼:0

这表明该项目是令人愉快的,不是太低调,也不是太正式。

有许多这样的类别,这些类别将用作搜索算法的一部分,因此速度可能是一个问题。我也不希望我的产品表变得很大。这意味着我对将其存储在产品表中感到不安,因为每个响应都有自己的列。

可能以这种方式存储,除非在具有连接的不同表中?只是在寻找一个相当灵活和优雅的解决方案。

如果我不清楚,请告诉我。

PS我正在使用MySQL,如果这有所作为......

编辑:我不认为有一个类别表和一个带有 product_id、category_id 和 score 的连接表会很好用。您要么必须将连接中的每个分数列(例如,wedding_score 等)命名为别名,要么返回多个分数列(每个类别一个)。

0 投票
2 回答
804 浏览

java - 休眠:标识符

使用休眠时:

我必须为每个实体标识一个 id 或复合 id,如果我想使用没有任何主键且没有复合键的表怎么办......

提前感谢