Questions tagged «terminology»

澄清和消除术语歧义,以便将重点放在数据库和数据库技术的清晰,一致,独特和易于识别的用法上。


1
数据库管理员常用的缩写
数据库管理员中最常用的缩写是什么?它们的相关含义是什么? 这适用于社区以及使用数据库等时搜索常用术语和缩写词含义的人员。


6
为什么使用“关系”一词?
用英语,我们可能会谈论鲍勃和蒂姆之间的关系。也许他们是表亲。在这种情况下,术语“关系”对我来说很有意义。 在关系数据库的上下文中,我理解该术语所指的含义,但我不理解为什么使用该术语。我认为了解为什么使用它可以帮助我更好地理解该领域,因此我想了解为什么使用它。 例如,为什么一个人被认为是“关系”?用英语来说,关系是描述两个实体如何关联的名词。它不涉及实体本身。在关系数据库的上下文中,“关系”是指实体本身。为什么? 我知道关系模型是在层次模型和网络模型(例如父级,邻居)之后出现的。但是在这些模型中,实体之间也有关系。那么为什么将此模型称为关系模型呢?是否有更具体的短语/术语?也许我们应该说这三个模型都是关系模型,但是层次模型和网络模型是特定类型的关系模型? 如果我们拥有彼此不相关的独立实体该怎么办。说,人,门和树。术语“关系”是否仍然适用? (也许这应该是多个问题。我认为答案是高度相关的-也许只有一个答案-所以我认为这是一个问题是有意义的。如果我错了,请告诉我而是创建单独的问题。) 编辑:此图对于可视化关系将不同的域相互关联起来可能很有用:


3
“ SARGable”一词的真正含义是什么?
SQL Server用户使用术语“ sargable”。我想知道是否有一个客观的,与实现无关的永恒定义:“可精”。 例如,WHERE foo LIKE '%bar%'许多人说sargable不可靠,但是某些RDBMS 可以在此类查询上使用索引。那么“不可燃”是什么意思呢? 其他参考 是什么使SQL语句可存储?

5
专栏与字段:我使用这些术语的方式有误吗?
我在这里感到有些尴尬,我一直在完全互换地使用“列”和“字段”这两个术语,最近在技术讨论中引起了一些混乱。 有人告诉我,这是不正确的,应该是正确的(将每个术语转换为电子表格术语,忽略数据类型以及使数据库有用的所有其他内容): 数据库列:类似于电子表格列 数据库记录:就像电子表格行 数据库字段:类似于电子表格“单元格”(特定行的特定列) 这是正确的吗?我可以发誓,列和字段比这更可互换使用。我当然去过。 因此,我们不将字段添加到表中,而是将列添加到表中,并且字段仅在讨论记录中的数据时才相关? 关于列与字段的其他想法? 编辑:澄清一下,当前上下文是MS SQL Server。我在SQL Server之前的背景是MS Access,这可能会影响我对这些术语的使用。

3
当您搜索字符串的中间而不是开头时,这叫什么?
我正在努力提高词汇量,以更好地与开发人员交流。我们在站点中有几个地方要辩论,是否应该从头开始搜索字符串,而不是字符串中的'running%'任何位置'%running%。 我一直称中间搜索为“模糊”,我意识到这是不正确的,因为模糊意味着更改单词“运行”,“运行” [sic],“运行” [sic]的形式。 搜索字符串开头和字符串中间的正确术语是什么?

1
单排表的术语?
是否有一个特定的术语来描述基数为1的关系? 我特别考虑的是RDBMS“特殊”单行表,例如DUAL(Oracle),SYSIBM.SYSDUMMY1(DB2,Derby)和RDB$DATABASE(Interbase,Firebird)。

1
OLAP和OLTP中的“在线”到底是什么?
我有点困惑,因为我质疑OLTP和OLAP中“在线”的定义。我以前认为这里的“在线”是指我们希望在有限的时间内并根据某个实例在时间上可用的数据来回答问题。 但是OLAP查询可能要花几个小时才能计算出来-这不是离线吗? 快速搜索表明离线OLAP听起来很混乱(离线在线分析处理)...? 什么是“在线”?


7
什么是“数据库”?
这个问题有很多讨论:大型搜索引擎使用哪些数据库技术? 太多的讨论使我感到困惑。那么...什么是数据库?关系数据库只是“数据库”吗?面向对象的数据库是“数据库”吗?有没有能让我存储和检索信息(例如地图,列表等)的数据库的系统? 还是数据库必须存储/检索信息,并且还具有某些管理功能(如用户和特权)?dBase III是否加上数据库,因为它并不是真正的关系数据库?

3
什么是“异构查询”?
我收到有关我在程序中运行的SQL查询的以下错误消息。SQL Server 2005 T-SQL。 异构查询要求为连接设置ANSI_NULLS和ANSI_WARNINGS选项。这样可以确保一致的查询语义。启用这些选项,然后重新发出查询。(严重性16) 修复起来很容易,设置ANSI_NULLS和ANSI_WARNINGS ON,但是我想知道什么是异构查询。Google搜索带来了数十个结果,告诉我要设置ANSI_NULLS和ANSI_WARNINGS,而没有解释该术语的含义。查询是: UPDATE SRV.DB.DBO.TABLE SET Column= (SELECT Column FROM SRV1.DB.DBO.TABLE) 我在想这是由于在一个查询中连接到多个数据库引擎,否则我就再也没有收到这个错误。 在这种情况下,“异构”是否仅指查询两个不同的数据库引擎?

2
PostgreSQL:不可变,易变,稳定
我不清楚IMMUTABLE,VOLATILE和STABLE函数的定义的真正含义。 我阅读了文档,特别是每个文档的定义。 IMMUTABLE指示该函数无法修改数据库,并且 在给定相同的参数值时始终返回相同的结果;也就是说,它不执行数据库查找或以其他方式使用其参数列表中不直接存在的信息。如果指定了此选项,则可以使用函数值立即替换具有全常数参数的任何函数调用。 STABLE表示该函数无法修改数据库,并且在单个表扫描中它将针对相同的参数值一致地返回相同的结果,但其结果可能会在SQL语句之间发生变化。对于其结果取决于数据库查找,参数变量(例如当前时区)等的函数,这是适当的选择。(对于希望查询当前命令修改的行的AFTER触发器来说,这是不合适的。)还请注意, current_timestamp系列功能符合稳定条件,因为它们的值在事务中不会更改。 VOLATILE表示该功能值即使在一次表扫描中也可以更改,因此无法进行优化。从这个意义上说,相对来说很少有数据库函数是易变的。一些示例是random(),currval(),timeofday()。但是请注意,任何具有副作用的函数都必须归类为易失性,即使其结果是可以预测的,也可以防止调用被优化。一个示例是setval()。 我的困惑来自与不可改变的条件,稳定的功能总是或始终返回相同的结果给出了相同的论点。 IMMUTABLE定义指出该函数不进行数据库查找或以其他方式使用未直接存在于其参数列表中的信息。因此,对我而言,这意味着此类函数用于操作客户端提供的数据,并且不应具有SELECT语句……尽管这听起来有点奇怪。 使用STABLE时,定义是相似的,因为它表示应始终返回相同的结果。因此,对我来说,这意味着每次使用相同的参数调用该函数时,它应返回相同的结果(相同的行,每次相同)。 因此,对我来说...意味着对表或可更新表执行SELECT的任何函数都应仅是易失性的。 但是,再次...对我来说听起来不对。 回到我的用例,我正在编写函数,这些函数在不断添加的表上执行带有多个JOIN的SELECT语句,因此,即使每次调用时,即使使用相同的参数,也希望函数调用返回不同的结果。 。 那么,这是否意味着我的功能应该是挥发性的?即使文档表明在这种意义上相对较少的数据库功能也是易失的? 谢谢!


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.