您现在的位置是: 首页 > 行车技巧 行车技巧

oracle apex themes_1

2024-10-31 18:57:05 97人已围观

简介oracle apex themes   今天,我将与大家分享关于oracle apex themes的最新动态,希望我的介绍能为有需要的朋友提供一些参考和建议。1.如何在APEX的表格中插入单选框如何在APEX的表格中插入单选框   在做表格时,我们经常有这样的需求,那就是把report的第一列设

oracle apex themes

       今天,我将与大家分享关于oracle apex themes的最新动态,希望我的介绍能为有需要的朋友提供一些参考和建议。

1.如何在APEX的表格中插入单选框

如何在APEX的表格中插入单选框

       在做表格时,我们经常有这样的需求,那就是把report的第一列设成单选框,这样用户可以通过勾选这些单选框,来选择需要集中进行操作的行,以进行批量删除或是修改。

       在APEX中,这样的单选框可以通过apex_item包中的checkbox函数来实现。

       函数原型如下:

       APEX_ITEM.CHECKBOX(

       p_idx IN NUMBER,

       p_value IN VARCHAR2 DEFAULT NULL,

       p_attributes IN VARCHAR2 DEFAULT NULL,

       p_checked_values IN VARCHAR2 DEFAULT NULL,

       p_checked_values_delimitor IN VARCHAR2 DEFAULT ':',

       p_item_id IN VARCHAR2 DEFAULT NULL,

       p_item_label IN VARCHAR2 DEFAULT NULL)

       RETURN VARCHAR2;

       在apex中,单选框选中后的值会存储到一个内部集合之中,这个集合可能是个联合数组,具体实现不太清楚,但是这些集合最多只能有50个,也就是说,不同种类的单选框只能有50种。

       p_idx参数就是指明到底是用第几个内部集合,如果你要创建一个大型的应用,其中很多页面要用到单选框,这样你就得找个地方记一下哪个集合对应于哪个页面或是场合,否则若是不同的场合用到了同一个集合,极有可能会导致数据出问题。

       p_value 用来指示该存储什么数据,在具体应用时,这个一般是某个主键列。

       p_attributes可以是'Checked'和'Unchecked'两种,用来指示单选框的初始选择状态。

       p_checked_values与p_checked_values_delimitor结合,用来指定初始状态下那些单选框被默认选择或不选。p_value值如果在p_checked_values中出现,则单选框呈现p_attributes所指定的状态,例如如果p_value此时是10, p_checked_values是10:20,p_attributes是'checked',那么因为p_value现在在p_checked_values之中,则此单选框呈现p_attributes所指定的勾选状态,而p_checked_values_delimitor则是用来分隔p_checked_values中各个值的分隔符,这里是个冒号。

       p_item_id和p_item_label用来指定此单选框在html代码里面的id属性,应该在使用javascript时会有不小的用途。

       那么我们该如何得到单选框所选择的值呢,apex提供了apex_application包,在此包里,我们可以得到如下的集合变量APEX_APPLICATION.G_F01,这里G_F01就存储了被勾选的所有单选框的值,G_F是前缀,而01则是p_idx所指定的值,当然因为最多只能有50个不同的集合,所有只能有G_F01到G_F50可用。

       以下代码摘自/oracle-apex/adding-a-checkbox-to-your-report-apex_item-tutorial-30.html 展示了如何挨个读取每个集合元素的值,然后进行dml操作,非常直观简单。

       BEGIN

       FOR i in 1..APEX_APPLICATION.G_F01.COUNT LOOP

       UPDATE emp

       SET ticked = 'Y'

       WHERE empno = APEX_APPLICATION.G_F01(i);

       END LOOP;

       COMMIT;

       END;

       以下例子示范了如何让部门号是10的员工行被勾选:

       SELECT APEX_ITEM.CHECKBOX(1,empno,DECODE(deptno,10,'CHECKED',NULL)) "Select",

       ename, job

       FROM emp

       ORDER BY 1

       以下例子示范了如何让部门号是10与20的员工行被勾选:

       SELECT APEX_ITEM.CHECKBOX(1,deptno,NULL,'10:20',':') "Select",

       ename, job

       FROM emp

       ORDER BY 1

        本文档可用作将之前升级的数据库从 Oracle 11gR2 降回至下列以前版本数据库的指南与核对表:Oracle 10gR1、Oracle 10gR2、Oracle

       本文档可用作将之前升级的数据库从 Oracle 11gR2 降回至下列以前版本数据库的指南与核对表:Oracle 10gR1、Oracle 10gR2、Oracle 11gR1。该文档内容也适用于从 11.2.0.4 降级至 11.2.0.1

       需要特别注意的是,在将数据库实例从当前版本降级至升级前版本时,数据库不会返回至与其升级前相同的状态。升级过程会导致一些不可逆的更改,具体取决于涉及的版本。降级过程允许用户在之前版本中打开并访问数据库实例。这通常就足够了。此外,在降级后可能需要采取一些更正操作(如卸载/重新安装,或重新升级至当前修补程序集级别),以解决残留问题。如果目标是将实例完全返回至其升级前的状态,那么将会用到包括恰好恢复至升级前状态在内的其他流程。

       本文章中讨论的过程是基于脚本的降级。本文章并未讨论如何使用导入/导出、数据泵或其他方法将数据从一个版本移至另一个版本。

       开始降级过程之前,在服务器上应该有或已安装要降至版本的 Oracle 二进制文件。如果已卸载了希望降至版本的 Oracle 可执行文件,请将该 Oracle 二进制文件重新安装至正确的版本/修补程序级别,以便进行降级。

       在CentOS 6.4下安装Oracle 11gR2(x64)

       Oracle 11gR2 在VMWare虚拟机中安装步骤

       Debian 下 安装 Oracle 11g XE R2

       注意事项:

       示例: 对于 Exadata Bundle Patch,过程为:

       卸载 patch

        示例: $ opatch auto /u01/app/oracle/patches/14103267 -rollback

       回滚SQL的变更

        示例: SQL> @rdbms/admin/catbundle_EXA__ROLLBACK.sql rollback SQL 变更.

       解决方案

       降级前步骤:

       1: 验证所有组件和字典对象对于 11gR2 均有效并且版本正确。

       set pagesize500 set linesize 100select substr(comp_name,1,40) comp_name, status, substr (version,1,10) version from dba_registry order by comp_name;select substr(object_name,1,40) object_name,substr(owner,1,15) owner, object_type from dba_objects where status='INVALID' order by owner,object_type;select owner,object_type,count(*) from dba_objects where status='INVALID' group by owner,object_type order by owner,object_type;

       如果任何组件或 Oracle 提供的对象无效,则需要运行 utlrp.sql 对其进行重新验证。该脚本可能需要运行多次以验证所有对象。

       $ cd $ORACLE_HOME/rdbms/admin $ sqlplus "/ as sysdba" SQL> @utlrp.sql

       当完成后,重新运行上述查询以验证所有无效对象现在都是有效的。

       2: 如果已在数据库上启用了 Oracle Database Vault,则必须:

       a: 授予 SYS 帐户 Database Vault DV_PATCH_ADMIN 角色。b: 降级数据库之前禁用 Database Vault。

       禁用 Oracle Database Vault 触发器: SQL> CONNECT DVSYS/DVSYSSQL> ALTER TRIGGER DV_BEFORE_DDL_TRG DISABLE;SQL> ALTER TRIGGER DV_AFTER_DDL_TRG DISABLE;

       3: 如果设置了操作系统参数 ORA_TZFILE,请取消其设置。如果不取消设置 ORA_TZFILE 变量,连接至数据库时可能会生成以下错误:

       SP2-1503: Unable to initialize Oracle call interface SP2-0152: ORACLE may not be functioning properly

       4: 如果在降级至之前的数据库版本之前,已运行 DBMS_DST 软件包将时区版本升级至新版本(例如在 11gR2 升级的升级后步骤期间升级至版本 11),那么必须将版本 11 时区文件安装到旧的 Oracle 数据库版本上的 $ORACLE_HOME/oracore/zoneinfo 目录中。

       5: 检查数据库的兼容性级别,以确定数据库是否可能具有防止降级的不兼容性。曾经设置过的 compatible 的最高值就是您能降级到的最低的那个版本。比如:

       如果数据库的兼容性级别已经是最新的了(比如11.2.0.4),则无法进行降级。

       如果数据库的兼容性级别曾经是 11.2.0 或更高,则无法将数据库降级到比 11.2.0.1 更低的版本 。如果要将数据库降级至 11gR1,COMPATIBLE 初始化参数必须从未比 11.1.0 更高。如果要将数据库降级至 10gR2,COMPATIBLE 初始化参数必须从未比 10.2.0 更高。如果要将数据库降级至 10gR1,COMPATIBLE 初始化参数必须从未比 10.1.0 更高。

       6: 如果数据库上安装有 Oracle Application Express,则必须将 apxrelod.sql 文件从 Oracle 11gR2 (11.2) ORACLE_HOME/apex/ 目录复制到 Oracle 主目录之外的某个目录,如系统上的临时目录。记下该文件的新位置。7: 在降级之前执行 11gR2 数据库的备份。

       数据库的降级步骤

       如果要从 11.2.0.4 降级至 11.2.0.2,使用 11.2.0.2 catrelod.sql 脚本会出现一个问题。针对版本 11.2.0.2 下载并应用修补程序 11811073,其提供了更新版本的 catrelod.sql。

       1: 以 Oracle Database 11g Release 2 (11.2) Oracle 主目录的所有者登录系统。2: 如果已针对数据库配置并运行了 Enterprise Manager Database Control,则按如下所示停止Database Control:

       a: 将 ORACLE_UNQNAME 环境变量设置为数据库唯一名称。b: 运行以下命令:RACLE_HOME/bin/emctl stop dbconsole

       3: 如果要降级的数据库是 Oracle Real Application Clusters (Oracle RAC) 数据库,则在所有实例上执行该步骤。

       好了,今天关于“oracle apex themes”的探讨就到这里了。希望大家能够对“oracle apex themes”有更深入的认识,并且从我的回答中得到一些帮助。