找到 1660 篇文章 关于大数据分析

什么是 DB2 表中的 NULL 检查和插入规则?

Mandalika
更新于 2020-09-14 14:06:49

481 次浏览

DB2 中的 Null 定义为“无”。它是一个未知值。如果我们想要限制任何列中的 NULL 值,那么该列应该在 CREATE TABLE 中使用“NOT NULL”参数定义。“NOT NULL”将强制用户为该列输入一个值。但是,如果我们不想为该列提供任何值,我们也可以放置一个“WITH DEFAULT”参数,这将允许 DB2 在用户未为“NOT NULL”列提供任何值的情况下放置默认值。例如,如果我们有一个名为 INVOICE_ID 的列 ... 阅读更多

什么是外键在引用另一个表的一个表上的级联规则?

Mandalika
更新于 2020-09-14 13:57:08

3K+ 次浏览

外键用于在子表(其中列定义为外键)和父表(其中子表的外键成为主键)之间建立引用约束。例如,如果我们有一个 ORDER 表,其中外键定义为 TRANSACTION_ID。此外键将引用 TRANSACTIONS 表的 TRANSACTION_ID 列。在此 TRANSACTIONS 表中,TRANSACTION_ID 将是主键。这里的父表是 TRANSACTIONS 表,而子表是 ORDERS 表。外键的级联规则规定,当任何条目 ... 阅读更多

什么是 DB2 表中备用键的定义和用法?

Mandalika
更新于 2020-09-14 13:52:07

497 次浏览

DB2 表包含许多列,其值将在整个表中保持唯一。在这些多个列中,只有一列被选为主键,其余键称为候选键。我们可以将任何候选键声明为备用键。这意味着此键的值不能取重复值,但是与主键不同,主键索引不会建立在备用键上。在使用 UNIQUE 关键字定义任何表时,我们可以定义备用键。例如,如果我们想将 TRANSACTION_ID 作为备用键,则 - CREATE TABLE ... 阅读更多

SQLCA 中的 SQLWARN3 有什么作用?通过一个实际例子解释一下?

Mandalika
更新于 2020-09-14 13:40:22

231 次浏览

SQLCA 中的 SQLWARN3 字段用于检测结果列数大于 COBOL-DB2 程序查询中给定的主机变量数的情况。SQLWARN3 是一个 1 字节字段,当查询返回的列数与使用的主机变量数不匹配时,它包含值“W”。我们可以使用 IF 或 EVALUATE 语句查询 SQLWARN3 的状态,如下例所示 A010-CHECK-ORDER。EXEC SQL SELECT ORDER_DATE, ORDER_TOTAL INTO :ORDER-DATE, FROM ORDERS ... 阅读更多

如何截断分配给主机变量时 DB2 列数据的截断捕获

Mandalika
更新于 2020-09-14 11:45:06

172 次浏览

在某些情况下,不使用 DCLGEN 成员,并且在工作存储区部分显式地完成主机变量声明。但是,由于这些显式声明,存在人为错误的可能性。其中一个错误是声明 COBOL 等效主机变量的错误数据长度。例如,主机变量应该声明为 PIC X(24),但错误地声明为 PIC X(14)。在这种情况下,当数据从 DB2 传输到 COBOL 程序时,由于接收主机变量的长度较短,列数据可能会被截断。我们可以检测 ... 阅读更多

如果不包含 DCLGEN 成员,COBOL-DB2 程序将如何运行?

Mandalika
更新于 2020-09-14 11:42:21

2K+ 次浏览

DCLGEN 成员包含两组重要的数据。包含表中所有列定义的表结构。以等效的 COBOL 数据类型声明的主机变量。除非我们在工作存储区部分显式地给出主机变量声明,否则包含 DCLGEN 成员不是强制性的。但始终建议包含 DCLGEN 成员,因为它还包含表结构,预编译器可以使用该结构执行查询列验证。虽然预编译器可以选择查询列验证,但它可以在预编译阶段为我们提供可能的错误 ... 阅读更多

SQLCA 中的 SQLCODE 在 COBOL-DB2 程序中的作用和用法是什么?

Mandalika
更新于 2020-09-14 11:24:41

2K+ 次浏览

SQLCA 的 SQLCODE 字段用于获取从 DB2 到 COBOL 程序的最后一个执行的 SQL 查询的返回代码。以下是 SQLCODE 字段可以取的一系列返回代码及其意义。SQLCODE = 0 → 查询成功执行,没有任何问题。SQLCODE > 0 → 执行查询时发出警告。SQLCODE < 0 → 执行查询时发生错误。以下示例段落演示了 SQLCODE 的用法。A010-CHECK-ORDER。EXEC SQL SELECT ORDER_DATE INTO :ORDER-DATE, FROM ORDERS ... 阅读更多

如果 COBOL-DB2 程序中不包含 SQLCA,结果会怎样?

Mandalika
更新于 2020-09-14 11:18:22

1K+ 次浏览

SQLCA 有助于 DB2 和 COBOL-DB2 程序之间的通信。SQLCA 有多个字段,可以提供有关最后一个执行的 SQL 查询的不同信息。SQLCA 在 COBOL-DB2 程序中是强制性的。但是,如果我们不使用 INCLUDE 语句给出 SQLCA,则程序编译将失败,我们将在日志中收到以下错误:“SQLCA 未定义为数据名称”。

DB2 数据类型 CHAR、DATE、TIME 和 TIMESTAMP 的 COBOL 等效类型是什么?

Mandalika
更新于 2020-09-14 11:15:06

2K+ 次浏览

DATE、TIME 和 TIMESTAMP DB2 数据类型分别占用 4、3 和 10 个字节。CHAR 数据类型占用的内存根据给定的大小占用。下表显示了 CHAR、DATE、TIME 和 TIMESTAMP 的等效 COBOL 数据类型。DB2 数据类型DB2 字节COBOL 等效类型COBOL 字节CHAR(z)zPIC X(z)zDATE4PIC X(10)10TIME3PIC X(8)8TIMESTAMP10PIC X(26)26

DB2 数据类型 SMALLINT、INTEGER 和 DECIMAL 的 COBOL 等效类型是什么?

Mandalika
更新于 2020-09-14 11:05:46

3K+ 次浏览

DCLGEN 实用程序将表列从 DB2 数据类型转换为具有等效 COBOL 数据类型的主机变量。SMALLINT 和 INTEGER 转换为 COBOL 带符号数值类型,DECIMAL 转换为带有隐式小数的 COBOL 带符号数值类型。以下是 SMALLINT、INTEGER 和 DECIMAL 的等效 COBOL 数据类型。DB2 数据类型DB2 字节COBOL 等效类型COBOL 字节SMALLINT2PIC S9(4) COMP2INTEGER4PIC S9(9) COMP4DECIMAL(x,y)INT(x/2)PIC S9(x-y)V9(y)INT(((p+q)/2) +1)

广告