使用存储过程和函数
DM 允许用户创建和使用存储模块,下面介绍如何在 DMODBC 应用中使用存储过程和
函数。
存储过程与函数字典信息的获取
DM ODBC 3.0 支持字典函数 SQLProcedures 的调用,用户可以调用此函数来获取 DM
存储过程与函数的字典信息。
调用方法如下:
SQLProcedures(stmt, (SQLCHAR*)"SYSTEM", SQL_NTS, (SQLCHAR*)"SYSDBA",
SQL_NTS, (SQLCHAR*)"TEST_PROC",SQL_NTS);
返回字典信息格式如表 3.4 所列。
字典项 |
相关说明 |
|
1 |
PROCEDURE_CAT |
存储模块编目信息 |
2 |
PROCEDURE_SCHEM |
存储模块模式信息 |
3 |
PROCEDURE_NAME |
存储模块名 |
4 |
NUM_INPUT_PARAMS |
DM 暂时没有返回此项信息 |
5 |
NUM_OUTPUT_PARAMS |
DM 暂时没有返回此项信息 |
6 |
NUM_RESULT_SETS |
DM 暂时没有返回此项信息 |
7 |
REMARKS |
DM 暂时没有返回此项信息 |
8 |
PROCEDURE_TYPE |
存储模块的类型 |
DM ODBC 3.0 支持字典函数 SQLProcedureColums 的调用,用于返回存储模块的参数信
息。
调用方法如下:
SQLProcedureColumns(stmt,(SQLCHAR*)"SYSTEM",SQL_NTS,
(SQLCHAR*)"SYSDBA", SQL_NTS, (SQLCHAR*)"TEST_PROC", SQL_NTS, NULL, 0);
返回字典信息格式如表 3.5 所列。
表 3.5 字典信息说明表
编 号 |
字典项 |
相关说明 |
1 |
PROCEDURE_CAT |
存储模块编目信息 |
2 |
PROCEDURE_SCHEM |
存储模块模式信息 |
3 |
PROCEDURE_NAME |
存储模块名 |
4 |
COLUMN_NAME |
参数名 |
5 |
COLUMN_TYPE |
参数的类型,即为输入参数还是输出参数 |
6 |
DATA_TYPE |
参数的 SQL 数据类型 |
7 |
TYPE_NAME |
参数的类型名 |
8 |
COLUMN_SIZE |
参数的精度 |
9 |
BUFFER_LENGTH |
参数所占用的字符长度 |
10 |
DECIMAL_DIGITS |
参数的刻度 |
11 |
NUM_PREC_RADIX |
仅对数值类型有效,仅为 10 或者 2,如果为 10 表示为精确数字, 如果为 2 表示为非精确数字 |
12 |
NULLABLE |
参数是否接收空值标志 |
13 |
REMARK |
参数说明 |
14 |
COLUMN_DEF |
参数的缺省值 |
15 |
SQL_DATA_TYPE |
参数的 SQL 数据类型 |
16 |
SQL_DATETIME_SUB |
日期时间类型或者时间间隔类型的子代码 |
17 |
CHAR_OCTET_LENGTH |
字符数据类型以字节计算的最大长度,非字符类型返回空值 |
18 |
ORDINAL_POSITION |
参数的顺序 |
19 |
IS_NULLABLE |
参数是否包含空值 |
评论