自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 Kingbase-数据类型5-布尔类型&枚举类型

尽管枚举类型的主要目的是用于值的静态集合,但也有方法在现有枚举类型中增加新值和重命名值(不能从枚举类型中去除现有的值,也不能更改这些值的排序顺序,如果要那样做可以删除并且重建。一个枚举类型的值的排序是该类型被创建时所列出的值的顺序。)类型是由一个静态、值的有序集合构成的数据类型。枚举类型的一个例子可以是一周中的日期,或者一个数据的状态值集合。文字布尔值中强制省略,在这里,解析器能够推断的文字类型一定是。一个枚举值的文本标签的长度受限于。标签中的空格也是有意义的。循 其他类型的常量中描述的通用字符串。

2024-01-02 11:35:05 1176

原创 Kingbase-数据类型4-日期/时间类型

对于一些格式,日期输入里的日、月和年的顺序会让人混淆,并且支持指定所预期的这些域的顺序。号,并且在习惯上认为以文本表示的每个域具有独立的符号,因此在这个例子中小时、分钟和秒部分被认为。标准,一个间隔值的所有域都必须由相同的符号,这样一个领头的负号将会应用到所有域;时间戳类型的有效输入由一个日期和时间的串接组成,后面跟着一个可选的时区,一个可选的。风格的时区特性可能导致伪造的输入被接受,因为它没有对区域缩写合理性的检查。适当的时区偏移被记录在。是一个可选的精度声明,它给出了在秒域中的小数位数目。

2024-01-02 11:33:01 1668

原创 Kingbase-数据类型3-二进制数据类型

零字节,并且也不允许那些对于数据库的选定字符集编码是非法的任何其它字节值或者字节值序列。对二进制串的操作会处理实际上的字节,而字符串的处理和取决于区域设置。但是在实际中,这常常是令人困扰的,因为它使二进制串和字符串之间的区。在某些情况下,反斜杠必须加倍,如上所示,因为通用的字符串文字解析器也会将一对反斜杠减少为一个数。一个字节,需要把它转换成与它的三位八进制值,并且前导一个反斜线。下表显示了必须被转义的字符,并给出了可以使用的替代转义序列。值时,某些值的字节必须被转义,而所有的字节值都可以被转义。

2024-01-02 11:30:48 607

原创 Kingbase-数据类型2-货币类型&字符类型

可接受的输入格式很多,包括整数和浮点数文字,以及常用的货币格式,型的列里会产生一个错误,除非超出长度的字符都是空白,这种情况下该串将被截断为最大长度(这个看上。非常长的值也会被存储在背景表中,这样它们不会干扰对较短的列值的快速。修改它没有用处,因为对于多字节字符编码来说,字符的数量和字节数可能完全不同。这三种类型之间没有性能差别,只不过是在使用填充空白的类型的时候需要更多存储尺寸,以及。这个长度是在编译的时候设置的(因而可以为特殊用途调整),缺省的最。型之中最慢的一个,因为它需要额外的存储开销。

2024-01-02 11:29:53 1026

原创 Kingbase-数据类型1-数字类型

创建一个列时不使用精度或比例,则该列可以存储任何精度和比例的数字值,并且值的范围最多可以到实现。如果一个要存储的值的比例比列声明的比例高,那么系统将尝试圆整(四舍五入)该值到指定的分数位数。不准确意味着一些值不能准确地转换成内部格式并且是以近似的形式存储的,因此存储和检索一个值可能出。如果输入数字的精度太高,那么可能发生园整。列创建的序列在所属的列被删除的时候自动删除。然后,如果小数点左边的位数超过了声明的精度减去声明的比例,那么抛出一个错误。值的计算在可能的情况下会得到准确的结果,例如加法、减法、乘法。

2024-01-02 11:28:26 1193

原创 Kingbase-查询-PIVOT 和 UNPIVOT 行列转换

输入为一个查询或者子查询的结果集,当为一个子查询的时候,支持目标列的类型可以为列名、常量或者表达式,但是为常量或者表达式的时候必须使用别名,表达式中支持使用列名和常量进。子句中的值对应的新列,每个聚合的值被转换到适当的新列中。操作为行转列,并在转换过程中聚合数据,新的列表示不同范围的聚合数据,子句指定转换后的新字段名称,用于存放参与列转行的每个输出字段的列名。列中的值转换为列并计算了他的聚合值生成一个新的结果集。列中的值转换为列并计算了他的聚合值生成一个新的结果集。首先计算指定的聚合函数的值。

2024-01-02 11:24:30 523

原创 Kingbase-查询-WITH 查询(公共表表达式)

在使用递归查询时,确保查询的递归部分最终将不返回元组非常重要,否则查询将会无限循环。中的数据修改语句只被执行一次,并且总是能结束,而不管主查询是否读取它们所有(或者任何)的。查询的一个有用的特性是在每一次父查询的执行中它们通常被计算一次,即使它们被父查询或兄弟。查询将会被按照所写的方式计算,而不抑制父查询以后可能会抛弃的行(但是,如上所述,如。子句的输出,不是数据修改语句的目标表,它形成了剩余查询可以引用的临时表。目标表上另一个执行的效果。查询查询仅一次,如果它引用和查询不止一次,则不会发生这种情况。

2024-01-02 11:23:21 1060

原创 Kingbase-查询-LIMIT 和 OFFSET&VALUES 列表

如果给出了一个限制计数,那么会返回数量不超过该限制的行(但可能更少些,因为查询本身可能生成的行。到一个不可预料的该查询的行的子集。你要的可能是第十到第二十行,但以什么顺序的第十到第二十?标准指定的,并且不同的数据库系统的做法也不同,因此通常最好使用表别名列表来重写这些默认的名。提供了一种生成“常量表”的方法,它可以被使用在一个查询中而不需要实际在磁盘上创建一个表。子句把结果行约束成一个唯一的顺序是很重要的。没有许诺把查询的结果按照任何特定的顺序发出,除非用了。同的规划(产生不同的行顺序)。

2024-01-02 11:21:20 415

原创 Kingbase-查询-组合查询&行排序

为了计算两个查询的并、交、差,这两个查询必须是“并操作兼容的”,也就意味着它们都返回同样数量的。在一个查询生成一个输出表之后(在处理完选择列表之后),还可以选择性地对它进行排序。当多于一个表达式被指定,后面的值将被用于排序那些在前面值上相等的行。注意一个输出列的名字必须孤立,即它不能被用在一个表达式中—例如,这。操作符负责这个排序顺序,但是一个用户定义的数据类型的设计者可以选择做些不同的设置。排序表达式可以是任何在查询的选择列表中合法的表达式。的结果中的行(有时侯这叫做两个查询的差)。

2024-01-02 11:20:18 520

原创 Kingbase-查询-选择列表

显然,如果两行里至少有一个列有不同的值,那么我们认为它是可区分的。请注意这里的一个集合的“第一行”是不可预料的,如果将任意值表达式用于选择列表,那么它在概念上向返回的表中增加了一个新的虚拟列。如果一个行集合里所有表达式的值是一样的,那么我们。对于简单的列引用,它是被引用列的名。标准的一部分,有时候有人认为它是一个糟糕的风格,因为它的结果是不可判。选择列表中的项可以被赋予名字,用于进一步的处理。子句中表表达式里面的列,例如它也可以是任意常量算术表达式。命名两次,但是在选择列表中分配的名字是要传递下去的名字。

2024-01-02 11:19:23 371

原创 Kingbase-查询-表表达式4-窗口函数处理

子句的一个或者另一个排序。但是,不推荐依赖于此。如果希望确保结果以特定的方式排序,请显式使。种情况中,在多个窗口函数计算之间通常要求一个排序步骤,并且并不保证保留行的顺序,即使它的。目前,窗口函数总是要求排序好的数据,并且这样查询的输出总是被根据窗口函数的。数被保证在数据上的同一趟扫描中计算。因此它们将会看到相同的排序顺序,即使。当多个窗口函数被使用,所有在窗口定义中有句法上等效的。定义的函数的计算没有这种保证(在这。),这些函数将在任何分组、聚集和。如果查询包含任何窗口函数(见。把这些行视为等效的)。

2024-01-02 11:18:13 335

原创 Kingbase-查询-表表达式3-GROUPING SETS 、CUBE 和 ROLLUP

一个空的分组集表示所有的行都要被聚集到一个单一分组(即使没有输入行。对于分组列或表达式没有出现在其中的分组集的结果行,对分组列或表达式的引用会被空值所替代。子句中的元素可以是表达式或者圆括号中的元素子列表。会按照上面所说的被解析为一个表达式的列表。子句被嵌套在另一个同类子句中,效果和把内层子句的所有元素直接写在外层子。的每一个子列表可以指定一个或者多个列或者表达式,它们将按照直接出现在。子句中指定了多个分组项,那么最终的分组集列表是这些项的叉积。使用分组集的概念可以实现比上述更加复杂的分组操作。

2024-01-02 11:17:18 348

原创 Kingbase-查询-表表达式2-WHERE 子句&GROUP BY 和 HAVING 子句

WHERE 子句&GROUP BY 和 HAVING 子句

2024-01-02 11:16:26 991

原创 Kingbase-查询-表表达式1-FROM 子句

表表达式计算一个表。该表表达式包含一个 FROM 子句,该子句后面可以根据需要选用 WHERE、GROUP BY 和 HAVING 子句。最简单的表表达式仅引用磁盘上的一个表,一个基本表,但可以用更复杂的表表达式以多种方法修改或组合基本表。

2024-01-02 10:54:11 471

原创 Kingbase-数据操纵

一个表被创建后,表中并不包含原始数据。因此用户在创建数据库后第一件事可能为向表中插入数据。在概念上,数据是以每次一行的方式被插入表中的。当然也可以每次插入多行,但却没有办法一次插入少于一行的数据。即使只知道几个列的值,也必须创建一个完整的行。

2024-01-02 10:39:51 832

原创 Kingbase-数据定义9-外部数据&其他数据库对象&依赖跟踪

KingbaseES 实现了部分的 SQL/MED 规定,允许我们使用普通 SQL 查询来访问位于 KingbaseES 之外的数据。

2023-12-28 16:49:39 431

原创 Kingbase-数据定义8-表分区

KingbaseES 支持基本的表划分。本小节介绍为何以及怎样把划分实现为数据库设计的一部分。

2023-12-28 16:48:02 1170 1

原创 Kingbase-数据定义7-继承

KingbaseES 实现了表继承,这对数据库设计者来说是一种有用的工具(SQL:1999 及其后的版本定义了一种 类型继承特性,但和这里介绍的继承有很大的不同)。

2023-12-28 16:45:31 944 1

原创 Kingbase-数据定义6-模式

一个 KingbaseES 数据库集簇中包含一个或更多命名的数据库。用户和用户组被整个集簇共享,但没有其他数据在数据库之间共享。任何给定客户端连接只能访问在连接中指定的数据库中的数据。

2023-12-28 16:44:33 992 1

原创 Kingbase-数据定义5-行安全性策略

除可以通过GRANT 使用 SQL 标准的权限 之外,表还可以具有 行安全性策略,它针对每一个用户限制哪些行可以被普通的查询返回或者可以被数据修改命令插入、更新或删除。这种特性也被称为行级安全性。默认情况下,表不具有任何策略,这样用户根据 SQL 特权系统具有对表的访问特权,对于查询或更新来说其中所有的行都是平等的。

2023-12-28 16:42:08 868 1

原创 Kingbase-数据定义4-权限

对象在创建时会被分配一个所有者,所有者通常是执行创建语句的角色。对于大部分类型的对象,初始状态下只有所有者(或者超级用户)能够对该对象做任何事情。为了允许其他角色使用它,必须分配权限。

2023-12-28 16:40:21 499 1

原创 Kingbase-数据定义3-系统列&修改表

每一个表都拥有一些由系统隐式定义的系统列。因此,这些列的名字不能像用户定义的列一样使用(注意这种限制与名称是否为关键词没有关系,即便用引号限定一个名称也无法绕过这种限制)。事实上用户不需要关心这些列,只需要知道它们存在即可。

2023-12-28 16:37:52 1029 1

原创 Kingbase-数据定义2-函数索引&约束

生成的列是一个特殊的列,它总是从其他列计算而来。因此,它对于列就像视图对于表一样。生成的列有两种: 存储列和虚拟列。存储生成的列在写入 (插入或更新) 时计算,并像普通列一样占用存储空间。虚拟生成的列不占用任何存储空间,并且在读取时进行计算。因此,虚拟生成的列类似于视图,存储生成的列类似于物化视图 (除了它总是自动更新)。KingbaseES 目前只实现存储生成的列。

2023-12-28 16:35:29 853 1

原创 Kingbase-数据定义1-表基础&默认值

本文档讲述了如何创建用来保存数据的数据库结构。在一个关系型数据库中,原始数据被存储在表中,因此 本章的主要工作就是解释如何创建和修改表,以及控制各种数据存储在表中的特性。讨论表如何被组织成模式,以及如何将权限分配给表。并简要介绍其他一些影响数据存储的特性,例如继承、视图、函数和触发器。

2023-12-28 16:31:22 564 1

原创 Kingbase-高级特性3-窗口函数&继承

一个窗口函数在一系列与当前行有某种关联的表行上执行一种计算。这与一个聚集函数所完成的计算有可比之处。

2023-12-28 16:28:47 796 1

原创 Kingbase-高级特性2-外键&事务

确保在 cities 表中有相应项之前任何人都不能在 weather 表中插入行,叫做维持数据的引用完整性。

2023-12-28 16:26:35 818 1

原创 Kingbase-高级特性1-视图

视图是基于 SQL 语句结果集的可视化的表,其内容由查询定义。在下列示例中,由于用户有频繁查询城市及对应天气的需求,故将该查询定义为视图,并给该查询命名为 myview,从而使得用户不必为以后的操作每次指定全部的条件

2023-12-28 16:24:51 948 1

原创 Kingbase-SQL语法3-调用函数

KingbaseES 允许带有命名参数的函数被使用位置或命名记号法调用。命名记号法对于有大量参数的函数特别有用,它让参数和实际参数之间的关联更明显和可靠。在位置记号法中,书写一个函数调用时,其参数值要按照它们在函数声明中被定义的顺序书写。在命名记号法中,参数根据名称匹配函数参数,并且可以以任何顺序书写。对于每一种记法,还要考虑函数参数类型的效果。

2023-12-28 16:21:38 382 1

原创 Kingbase-SQL语法2-值表达式

值表达式被用于各种各样的环境中,例如在 SELECT 命令的目标列表中、作为 INSERT 或 UPDATE 中的 新列值或者若干命令中的搜索条件。为了区别于一个表表达式(是一个表)的结果,一个值表达式的结果有 时候被称为一个标量。值表达式因此也被称为标量表达式(或者甚至简称为表达式)。表达式语法允许使用 算数、逻辑、集合和其他操作从原始部分计算值。

2023-12-28 16:19:31 936 1

原创 Kingbase-SQL语法篇1-词法结构

本文描述了 SQL 的语法,构成了理解后续具体介绍如何使用 SQL 定义和修改数据的基础。即使已熟悉 SQL,也请仔细阅读本文,因为其中部分概念和规则,可能同 SQL 数据库中实现得不一 致,或者属于 KingbaseES 中特有的规则和概念。

2023-12-28 16:09:58 961 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除