标签: relational

从XML碎化数据,导入关系表(SQL Server 2008)

我到处都寻求帮助.

我对这一切都是新手,我发现很难理解它上面的所有文档.

说我有这个XML:

<footballteams>
  <team manager="Benitez">
    <name>Liverpool</name>
    <ground>Anfield</ground>
  </team>
  <team manager="Mourinho">
    <name>Chelsea</name>
    <ground>Stamford Bridge</ground>
  </team>
  <team manager="Wenger">
    <name>Arsenal</name>
    <ground>Highbury</ground>
  </team>
</footballteams>
Run Code Online (Sandbox Code Playgroud)

我想从中获取数据并将其加载到名为footballteams(name,manager,ground)的关系表中.

我想在SQL Server 2008中这样做,从我到处读到的一个有用的方法是.nodes()方法,但我只是无法理解如何使用它.

xml xquery relational sql-server-2008

7
推荐指数
1
解决办法
8199
查看次数

关系代数 - 笛卡儿积与自然联合?

我正在攻读考试,但我没有找到一个可靠的标准来确定是否x要使用笛卡尔积,或者是否使用自然连接|X|.

我想出了一个粗略的指导:

"如果需要投影与要加入的表中的属性同名的属性,则必须使用x并声明要投影的表名:tableA.colname1 = tableB.colname1"

然而,这并不遵循我的笔记中的一些解决方案,我的讲师似乎使用x上述惯例或|x|可互换使用.

有没有人可以遵循规则来定义一个用户而不是另一个用户?


以此模式为例(仅为了简洁而引用的问题相关的模式):

takes(ID, course_id, sec_id, semester, year, grade)
student(ID, name, dept_name, tot_cred)
Run Code Online (Sandbox Code Playgroud)

Q)找到参加2011年春季或2011年秋季课程的所有学生的姓名.

我的回答是:

? name(? semester="Spring" ^ year=2011(takes ? student)) ? ? name(? semester="Autumn" ^ year=2011(takes ? student))
Run Code Online (Sandbox Code Playgroud)

实际答案:

? name(? semester="Spring" ^ year=2011 ^ takes.ID=student.ID(takes x student)) ? ? name(? semester="Autumn" ^ year=2011 ^ takes.ID=student.ID(takes x student))
Run Code Online (Sandbox Code Playgroud)

任何人都可以提供原因吗?

在我看来,自然加入将照顾takes.ID=student.ID

sql database-design relational relational-algebra relation

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

实体关系模型和关系模型之间有什么区别?

我只能找到以下两个不同之处:

  1. ER模型中的关系是明确定义的,而它们隐含在关系模型中.
  2. 关系模型需要一个中间表(通常称为"联结表")来保存两个实现多对多关系的外键.

当我们有ER图时,为什么我们使用关系模型?

database entity-relationship relational junction-table entity-relationship-model

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

使用关系运算符比较指针意味着什么?

如果我有两个指针变量a和b,使用语句"a <b"是什么意思?这样做应该比较他们的内存地址的值?如果是这样,计算机中的内存地址顺序是什么?

c c++ pointers relational operators

7
推荐指数
1
解决办法
494
查看次数

关系阵营和"真实世界"的数据库开发

自1995年首次出版Date和Darwen的"第三宣言"以来,已经过去了十多年.

在今天的数据库世界中,关系学派的地方是什么?有没有证据表明Manifesto的想法改变了主流软件开发和数据管理实践?他们是否催化了新数据管理产品的创建?这些产品是否商业化成功?

database-design relational relational-database

6
推荐指数
2
解决办法
460
查看次数

在单个SQL表中表示记录之间的多对多关系的最佳方法是什么?

我有一个像这样的SQL表:

更新:我正在更改示例表,因为原始数据(州,城市,学校)的现有分层性质使得项目之间需要简单关系的事实蒙上阴影.

entities
id      name               
1       Apple     
2       Orange            
3       Banana             
4       Carrot                
5       Mushroom        
Run Code Online (Sandbox Code Playgroud)

我想定义这些实体之间的双向关系,以便查看一个实体的用户可以看到所有相关实体的列表.

关系由最终用户定义.

在数据库中表示这些关系并随后查询和更新它们的最佳方法是什么?

我看到的一种方式......

我的直觉说这样的关系表是这样的:

entity_entity
entity_id_a       entity_id_b
1                 2
5                 1
4                 1
5                 4
1                 3
Run Code Online (Sandbox Code Playgroud)

既然如此,如果提供的entity_id为4,那么如何获得所有相关记录,即1和5?

同样,entity_id = 1的查询应该返回2,3,4和5.

感谢您的时间,让我知道我是否可以澄清这个问题.

sql database entity-relationship many-to-many relational

6
推荐指数
1
解决办法
2258
查看次数

如何说服编程团队放弃旧方法?

这更像是一个面向业务的编程问题,我似乎无法弄清楚如何解决.我与一个与BASIC合作超过20年的程序员团队合作.我被引进来帮助在.NET中编写相同的软件,只有更新和现代实践.问题是,我似乎无法让任何其他3个团队成员(所有BASIC程序员,尽管现在也有.NET)了解如何正确地执行关系数据库.这是他们不理解的事情:

我们基本上有一个跟踪客户标签信息的交易.我们需要能够跟踪当前交易和过去的交易.在旧系统中,使用平面文件数据库,其具有包含客户的基本当前交易的记录的一个表,以及包含客户的所有先前交易以及重要货币信息的另一个交易.为了防止冗余,他们会用历史记录事务覆盖当前事务 - (历史文件首先更新,然后更新当前事务.)这是完全不必要的,因为你只需要一个事务表,但我的主管或我的其他任何两个co工作者似乎无法理解这一点.我怎么能说服他们看到光线让我们赢了' 必须做大量的工作并最终击中数据表太多次?感谢您的投入!

basic relational flat-file

6
推荐指数
1
解决办法
826
查看次数

存储任意数据库表的数据结构

我想设计一个JVM数据结构(Java/Scala),可用于表示和存储任意关系数据库表的内容.数据结构应该快速(不太gc密集,缓存友好)和内存高效,因此更大的表可以适合RAM.

一种节省内存的解决方案是将每个列分别存储在基本数组中,但我担心缓存友好性,因为同一行中的项不会存储在一起.无论列有多窄,具有N列的行都将导致N个高速缓存未命中.

另一个解决方案是将每一行存储在一个对象数组中,其中每个元素代表一个字段,并在检索时转换为正确的类型,但这需要以其盒装形式存储数字类型,因此它的内存效率不高.并且它可能也不是那种高效缓存.

另一个解决方案是将每行的数据布局为字节数组,就像真正的数据库序列化它们的行一样,只使用必要的字节数.这是缓存友好和内存效率,但我担心每次访问时序列化/反序列化的成本.

什么是最好的方式?

java datatable scala relational data-structures

6
推荐指数
1
解决办法
2043
查看次数

6
推荐指数
1
解决办法
1万
查看次数

内存中的关系数据库?

我在Redis上有一个简单的问题.如果它的性能关键是它在内存中,乳清不能在常规SQL数据库上完成吗?

sql relational in-memory redis

6
推荐指数
2
解决办法
5874
查看次数