---
title: "CREATE_WRAPPED - OceanBase 数据库 V4.2.5 | OceanBase 文档中心"
description: CREATE_WRAPPED CREATE_WRAPPED 用于将 PL 对象定义字符串加密成 CREATE WRAPPED 语句字符串并执行这个语句创建 WRAPPED 对象。 语法 DBMS_DDL.CREATE_WRAPPED (DDL VARCHAR2); DBMS_DDL.CREATE_WRAPPED(DD…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.2.5 LTS

# CREATE_WRAPPED

更新时间：2026-07-15 20:56:58

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.2.5/zh-CN/700.reference/500.sql-reference/300.pl-reference/300.pl-oracle/1400.pl-system-package-oracle/21100.dbms-ddl-oracle/300.dbms-ddl-create-wrapped-oracle.md)  

`CREATE_WRAPPED` 用于将 PL 对象定义字符串加密成 `CREATE WRAPPED` 语句字符串并执行这个语句创建 `WRAPPED` 对象。

## 语法

```sql
DBMS_DDL.CREATE_WRAPPED (DDL VARCHAR2);
DBMS_DDL.CREATE_WRAPPED(DDL DBMS_SQL.VARCHAR2A,
                        LB  PLS_INTEGER,
                        UB  PLS_INTEGER);
DBMS_DDL.CREATE_WRAPPED(DDL DBMS_SQL.VARCHAR2S,
                        LB  PLS_INTEGER,
                        UB  PLS_INTEGER);

```

## 参数解释

| **参数** | **说明** |
| --- | --- |
| CREATE_WRAPPED (DDL VARCHAR2) | - DDL: 类型为 VARCHAR2 的字符串，包含要混淆的 PL/SQL 源代码。 - RETURN: 返回值，返回一个 VARCHAR2 类型的字符串，包含经过混淆处理后的 PL/SQL 代码。 |
| CREATE_WRAPPED(DDL DBMS_SQL.VARCHAR2A， LB PLS_INTEGER, UB PLS_INTEGER) | - DDL: 类型为 DBMS_SQL.VARCHAR2A 的数组，包含要混淆的 PL/SQL 源代码。 - LB: 类型为 PLS_INTEGER 的下界索引。 - UB: 类型为 PLS_INTEGER 的上界索引。 |
| CREATE_WRAPPED(DDL DBMS_SQL.VARCHAR2S,LB PLS_INTEGER,UB PLS_INTEGER) | - DDL: 类型为 DBMS_SQL.VARCHAR2S 的数组，包含要混淆的 PL/SQL 源代码。 - LB: 类型为 PLS_INTEGER 的下界索引。 - UB: 类型为 PLS_INTEGER 的上界索引。 |

## 示例

使用 DBMS_DDL 包中的 `CREATE_WRAPPED` 过程来创建一个包装后的 PL/SQL 包。它将原始的 PL/SQL 代码转换为不可读的形式，以防止直接查看和修改。

```shell
CALL dbms_ddl.create_wrapped(
  '-- this is a comment'                                                   || chr(10) ||
  'create or replace package arithmetic as'                                || chr(10) ||
  '  function add(a number, b number) return number; -- this is a comment' || chr(10) ||
  '  function sub(a number, b number) return number; /* comment */'        || chr(10) ||
  '  function /* comment */ mul(a number, b number) return number;'        || chr(10) ||
  '  /* comment1'                                                          || chr(10) ||
  '     comment2'                                                          || chr(10) ||
  '     comment3 */'                                                       || chr(10) ||
  '  function div(a number, b number) return number;'                      || chr(10) ||
  'end arithmetic;'                                                        || chr(10) ||
  '-- comment'                                                             || chr(10) ||
  '/* comment */'
);
Query OK, 0 rows affected (0.612 sec)

```

其中：

- `create or replace package arithmetic as`：定义一个名为 arithmetic 的包。
 - `function add(a number, b number) return number`：定义一个 `add` 函数，接受两个 number 类型的参数并返回一个 number 类型的结果。
 - `function div(a number, b number) return number`：定义一个 `div` 函数，接受两个 number 类型的参数并返回一个 number 类型的结果。
 - `end arithmetic`：结束包定义。
 - `-- comment`：单行注释。
 - `/* comment */`：多行注释。

包装后的代码将是一个不可读的字符串，类似于以下形式（具体输出会因版本和环境而异）：

```sql
BEGIN
  DBMS_DDL.CREATE_WRAPPED('package body "SCHEMA_NAME"."ARITHMETIC" is
  function "ADD"(a in number, b in number) return number is
  begin
    return a + b;
  end;
  function "SUB"(a in number, b in number) return number is
  begin
    return a - b;
  end;
  function "MUL"(a in number, b in number) return number is
  begin
    return a * b;
  end;
  function "DIV"(a in number, b in number) return number is
  begin
    if b = 0 then
      raise value_error;
    else
      return a / b;
    end if;
  end;
end "ARITHMETIC";');
END;
/

```

#### 注意

实际的包装输出将是不可读的二进制或加密文本，上述示例仅用于说明。

  上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
