找到关于 DB2 的150 篇文章

什么是 DB2 中的存储过程?如何创建一个新的存储过程?

Mandalika
更新于 2020年11月30日 09:19:19

6K+ 次浏览

DB2 存储过程是由 DBMS 直接管理的程序。存储过程通常包含 SQL 语句,并且可以被应用程序调用。存储过程处理查询并将结果返回给应用程序。存储过程可以用于经常使用的 SQL 语句,因此无需反复使用相同的 SQL 查询,我们只需使用存储过程即可。存储过程的另一个好处是它们速度快,并且与应用程序中使用的静态 SQL 相比,性能更好。存储过程可以…… 阅读更多

如何查找在特定 DB2 表中构建的所有索引?

Mandalika
更新于 2020年11月30日 09:18:19

532 次浏览

DB2 索引用于提高查询性能并加快查询结果速度。可以在单个表上构建多个索引,DB2 优化器根据 WHERE 子句中使用的谓词选择不同的索引来获取查询结果。为了查找在特定表上构建的所有索引,我们将使用 DB2 系统表 SYSIBM.SYSINDEXES。此表记录与索引相关的所有详细信息。可以在此表上使用以下 SQL 查询来获取所需结果。示例 SELECT NAME, TBNAME FROM SYSIBM.SYSINDEXES WHERE TBNAME = ‘’…… 阅读更多

如何找出删除索引后将受影响的计划?

Mandalika
更新于 2020年11月30日 09:17:32

126 次浏览

DB2 计划包含所有可执行形式的 SQL 语句。要执行任何 COBOL-DB2 程序,我们需要提供其对应的计划。DB2 优化器将评估计划中存在的 SQL 的访问路径,以获取 COBOL-DB2 程序的结果。计划中的 SQL 可能会使用许多索引。索引基于键值促进表搜索并加快查询处理时间。如果删除任何索引,它可能会对包含使用该已删除索引的 SQL 的计划产生负面影响。因此,作为影响分析的一部分,它…… 阅读更多

标量函数和列函数的区别

Mandalika
更新于 2020年11月30日 09:16:24

590 次浏览

DB2 标量函数接受单个列值并返回单个结果。列函数从 DB2 表的多行中获取列值并返回单个结果。对于标量函数,只涉及一行。标量函数描述LENGTH给出列值的长度REPLACE用于将一个字符串替换为另一个字符串CONCAT用于组合两个或多个列值INTEGER给出列值的整数等价物CHAR给出列值的字符等价物例如,如果我们有一个 ORDERS DB2 表,并且我们只想返回所有…… 阅读更多

什么是 DB2 中的列函数?举例说明

Mandalika
更新于 2020年11月30日 09:15:09

603 次浏览

DB2 列函数也称为聚合函数。这些函数从多行的特定列中获取值并返回单个值。以下是某些最常用的列函数的列表。列函数描述SUM查找列值的总和COUNT计算列值的个数AVG查找列值的平均值MAX查找列中的最大值MIN查找列中的最小值列函数只能用于 SELECT 查询。例如,如果我们必须找到 2020-08-15 从 ORDERS 表中下达的所有订单的 ORDER_TOTAL 的平均值,那么我们…… 阅读更多

DB2 中死锁的错误代码、原因和示例

Mandalika
更新于 2020年11月30日 09:14:15

2K+ 次浏览

当两个应用程序锁定彼此需要的数据时,就会发生死锁情况。这两个应用程序都等待另一个应用程序释放锁,从而发生死锁。让我们来看一个例子来更好地理解这一点:有两个 COBOL-DB2 程序正在执行:PROG A 和 PROG B。PROG A 在 ORDERS 表中持有 UPDATE 锁,而 PROG B 在 TRANSACTION 表中持有 UPDATE 锁。在某个时刻,PROG A 需要 TRANSACTION 表上的 UPDATE 锁,而 PROG B 需要 ORDERS 表上的 UPDATE 锁,但是两个应用程序程序…… 阅读更多

举例说明共享锁、更新锁和排它锁

Mandalika
更新于 2020年11月30日 09:13:23

2K+ 次浏览

共享锁、更新锁和排它锁是在并发应用程序处理中使用的锁的类型。这意味着当两个或多个应用程序尝试访问同一行或页面时,将使用这些锁。以下是每种锁类型的描述。共享锁如果任何应用程序在页面上获取共享锁,则它可以读取该页面,但不能更新它。其他并发应用程序可以在同一页面上获取共享锁或更新锁。更新锁如果任何应用程序在页面上获取更新锁,则它可以读取该页面,但不能更新它。在…… 阅读更多

不可重复读和幻读如何影响 COBOL-DB2 程序的功能?

Mandalika
更新于 2020年11月30日 09:12:38

582 次浏览

当 COBOL-DB2 程序多次执行相同的查询时,会发生不可重复读的情况,但每次查询的结果都不同。这通常发生在两个 COBOL-DB2 程序访问 DB2 表的同一行时。第一个程序读取该行,然后第二个程序读取同一行,对其进行更新并提交更改。第一个程序再次读取同一行,但现在数据与之前的提取不匹配。当多次执行查询时,查询结果中的行数不匹配时,就会发生幻读情况。对于…… 阅读更多

丢失更新和脏读如何影响 COBOL-DB2 程序的处理?

Mandalika
更新于 2020年11月30日 09:11:49

746 次浏览

丢失更新和脏读问题与并发有关。并发定义为两个或多个应用程序访问同一表数据的 kemampuan。丢失更新会以下列方式影响 COBOL-DB2 程序的处理。假设有两个应用程序程序——PROG A 和 PROG B 正在尝试访问 ORDERS DB2 表的同一行。PROG A 和 PROG B 同时从 ORDERS 表中读取 ORDER_ID = ‘Z87661’ 的行。PROG A 更新此行中的某些数据并提交更改。PROG B 现在更新…… 阅读更多

在 COBOL-DB2 程序中实现重启逻辑

Mandalika
更新于 2020年11月30日 09:11:01

浏览量:10K+

问题:一个COBOL-DB2程序从包含1000条记录的输入文件中读取数据,并将数据插入到DB2表中。程序在第432条记录后失败。您将如何实现重启逻辑?解决方案在COBOL-DB2程序中,可以通过设置提交频率来实现重启逻辑。如果我们选择100的提交频率,则需要执行以下步骤:声明一个计数器变量,例如WS-COUNT。放置一个循环,在循环中我们将从文件中读取记录并将其插入数据库。每次读取记录时,计数器WS-COUNT加一…… 阅读更多

广告