标签: rdbms

为什么我会选择在关系数据库中存储和操作XML?

现代RDBMS支持XML列类型和功能,用于处理存储过程中的XML.从历史上看,我总是将层次结构数据(无论是OO对象还是XML)映射到关系表.鉴于XML的广泛数据库支持我应该改变我的方式吗?

xml rdbms

12
推荐指数
3
解决办法
2142
查看次数

存储/访问有向图的最佳方式

我有大约3500个防洪设施,我想将其表示为确定流路径的网络(基本上是有向图).我目前正在使用SqlServer和CTE递归检查所有节点及其上游组件,只要上游路径不分叉,这就可以工作.然而,由于增加了上游复杂性,一些查询比其他查询指数长得多,即使它们在物理上不太远(即两个或三个"下游"段).在某些情况下,我会在杀死查询之前让它超过十分钟.我正在使用一个简单的双列表,一列是设施本身,另一列是第一列中列出的设施的上游设施.

我尝试使用当前工具添加索引以帮助加快速度,但这没有任何区别.并且,对于图中可能的连接,任何节点可以具有多个上游连接,并且可以从多个"下游"节点连接.

当然有可能在数据中有循环,但我还没有找到一种好的方法来验证这一点(除了CTE查询报告最大递归计数命中时;这些很容易修复).

所以,我的问题是,我存储这些信息是错误的吗?有没有比CTE更好的方法来查询上游点?

rdbms directed-graph common-table-expression

12
推荐指数
2
解决办法
4254
查看次数

帮我把Oracle术语放到SQL Server术语中

我的公司现在第一次支持Oracle,我的大多数同事都是没有真正使用过Oracle的SQL Server开发人员.我对甲骨文有点熟悉,但远不是这个主题的天才.不幸的是,这足以说明我比大多数同事更了解甲骨文,所以我发现自己不断努力解释我仍在学习的概念,根本不熟悉Oracle的人可以了解.

我遇到的最大问题是了解SQL Server术语如何转换为Oracle术语.我知道没有直接的1:1术语映射,但是在与我的以SQL Server为中心的同事交谈时,能够知道如何将Oracle概念引入SQL Server术语,反之亦然.有人能告诉我将这些SQL Server术语放入Oracle术语的最佳方法吗?

  • 数据库
  • 模式

相反,如何用SQL Server术语解释这些Oracle概念?

  • 表空间
  • 数据库
  • 倾听者
  • 服务名称
  • SID

sql sql-server oracle rdbms terminology

12
推荐指数
2
解决办法
8767
查看次数

如何为消费者应用程序设计"NOSQL"数据库(例如社交书签)

我一直在阅读很多关于非关系型数据库,整个NOSQL运动的帖子,并且围绕它进行了很多新的活动.这似乎是构建高度可扩展的Web应用程序的一种非常有趣的方法,但不幸的是(在这个新生阶段也是一件好事)目前还没有一个明确的领导者/标准.

我的背景是在LAMP堆栈中(以MySQL作为dB),我想了解它会有什么差异和限制 - 但是使用现实生活中的Web应用程序的例子.关于RDBMS与非RDBMS的优缺点理论有很多很好的文章,但是我没有找到任何有关如何构建现有Web应用程序(例如社交书签)的示例新的dB结构的优势以及如果有的话可以省去哪些功能 - NOSQL dB可以是键值还是以文档为中心的或图形.

是否有人愿意接受对现实世界网络应用程序的NOSQL与RDBMS模型/架构的高级别比较(例如社交书签或可能很好地解释这些概念的任何其他示例)?

有关其他人的参考,以下是我遇到的一些文章:

rdbms database-design scalability non-relational-database nosql

12
推荐指数
1
解决办法
3508
查看次数

为什么NoSQL说传统的RDBMS不擅长可扩展性

我读过一些文章说,像MySQL这样的RDBMS并不擅长扩展,但像MongoDB这样的NoSQL可以很好地分解. 我想知道RDBMS提供的哪个功能本身不能很好地分片.

rdbms sharding scalable nosql

12
推荐指数
1
解决办法
8835
查看次数

NoSQL数据库无法处理的任务示例(如果有)

我想测试一下NoSQL世界.这只是好奇心,而不是绝对需要(尚未).我已经阅读了一些有关SQL和NoSQL数据库之间差异的信息.我确信潜在的优势,但我有点担心NoSQL不适用的情况.如果我理解NoSQL数据库本质上错过了ACID属性.

有人可以给出ACID关系数据库可以处理的一些真实世界操作(例如电子商务站点,或科学应用程序,或......)的示例,但NoSQL数据库可能会失败,无论是系统地某种类型竞争条件还是停电等?

如果没有修改数据库引擎,那么完美的例子就是没有任何解决方法.NoSQL数据库表现不佳的例子最终会成为另一个问题,但在这里我想看看理论上我们什么时候不能使用这种技术.

也许找到这样的例子是数据库特定的.如果是这种情况,那么让MongoDB代表NoSQL世界.

编辑:澄清这个问题我不想讨论哪种数据库对某些情况更好.我想知道在某些情况下这项技术是否绝对是一个绝对的死胡同,因为无论我们如何努力尝试某种类型的功能,SQL数据库提供的功能都无法在nosql商店之上实现.由于有许多nosql商店可用,我可以接受选择现有的nosql商店作为支持,但我最感兴趣的是商店应该提供的最小功能子集,以便能够实现更高级别的功能(比如可以使用不提供X的商店...).

rdbms acid mongodb nosql

12
推荐指数
3
解决办法
7914
查看次数

使用Redis而不是RDBMS有什么缺点?

因此,如果我试图实现看起来像Facebook的Graph API的东西,需要非常快速并支持数百万用户,那么使用Redis而不是RDBMS有什么不利之处呢?

谢谢!乔纳森

rdbms replace scalability redis

12
推荐指数
1
解决办法
7978
查看次数

使用Liquibase创建具有降序键列的索引

我想知道是否有一种通用的方法来创建liquibase的"有序索引".会产生这些SQL语句的东西:

CREATE INDEX idx_name ON my_table (m_column DESC)
Run Code Online (Sandbox Code Playgroud)

我需要oracle,postgresql,mysql和sql server.

如果没有,我将不得不手动使用SQL每个RDBM 的标签.

indexing rdbms database-agnostic liquibase

12
推荐指数
2
解决办法
4845
查看次数

MySQL事务以及Rollback如何工作?

我刚刚遇到交易,我想知道

  1. 使用它的利弊是什么,
  2. 回滚如何工作,旧的值保存在内存中,如果更大,会发生什么?

对于1.我知道你必须将它用于银行转账,但是将它用于一切都不是更好吗?!?

mysql rdbms transactions

12
推荐指数
1
解决办法
5921
查看次数

如何使用MySQL Workbench更改字段的值?

我安装了MySQL Workbench,我遇到了以下问题.

我执行这个简单的选择查询:

SELECT * FROM spring_security.user;
Run Code Online (Sandbox Code Playgroud)

返回行列表.

因此,在输出区域中,我选择特定行的字段,然后尝试更改其值.但我不能这样做.

似乎是不可能为特定行的特定字段插入新值.

为什么?如何使用此工具更改值?

TNX

mysql database rdbms mysql-workbench

12
推荐指数
2
解决办法
2万
查看次数