APEX开发过程的一个细节

46 篇文章 0 订阅
28 篇文章 1 订阅
文章讲述了在开发过程中遇到的代码命名问题,特别关注了从DataGrip中的自定义命名到OracleAPEX页面中使用别名以避免乱码的转变。作者分享了SQL查询的调整过程,强调了遵循标准命名约定的重要性。
摘要由CSDN通过智能技术生成

开发过程中发现有一些特殊代码命名有要求

比如

代码:

select "project_id",
    null LINK_CLASS,
    apex_page.get_url(p_items => 'P201_PROJECT_ID', p_values => "project_id") LINK,
    null ICON_CLASS,
    null LINK_ATTR,
    null ICON_COLOR_CLASS,
    case when coalesce(:P201_PROJECT_ID,'0') = "project_id"
      then 'is-active' 
      else ' '
    end LIST_CLASS,
    (substr("project_name", 1, 50)||( case when length("project_name") > 50 then '...' else '' end )) LIST_TITLE,
    (substr("project_owner", 1, 50)||( case when length("project_owner") > 50 then '...' else '' end )) LIST_TEXT,
    null LIST_BADGE
from "JAS_PROJECT_MASTER" x
where (:P201_SEARCH is null
   or upper(x."project_name") like '%'||upper(:P201_SEARCH)||'%'
   or upper(x."project_owner") like '%'||upper(:P201_SEARCH)||'%'
    )

 and to_char("start_date",'yyyy') = '2024'
--and to_char("start_date",'yyyy') = '2023'  --写死的,显示查询数据

order by "project_name"

之前用的自己的代码在DataGrip中运行可以展示,但是因为没有用别名命名,APEX页面展示是乱码,后来用了对应别名才正常显示:

之前:

select D.PLATFORM_DEMAND_ID 	, --需求id
       D.DEMAND_TITLE       --需求名称
from DIGITAL_PLATFORM_DEMAND D
         left join DIGITAL_PLATFORM_DEMAND_HIS H
                   on D.PLATFORM_DEMAND_ID = H.PLATFORM_DEMAND_ID
                       and D.TENANT_ID = H.TENANT_ID
                       and H.PLATFORM_DEMAND_HIS_ID =
                           (select MAX(e.PLATFORM_DEMAND_HIS_ID)
                            from DIGITAL_PLATFORM_DEMAND_HIS e
                            where e.PLATFORM_DEMAND_ID = D.PLATFORM_DEMAND_ID)

where (:P261_SEARCH is null
   or upper(D.DEMAND_TITLE) like '%'||upper(:P261_SEARCH)||'%')
   and to_char(D.CREATED_DATE, 'yyyy') = '2024'

之后:

select D.PLATFORM_DEMAND_ID 	LIST_TEXT, --需求id
       D.DEMAND_TITLE      LIST_TITLE --需求名称
from DIGITAL_PLATFORM_DEMAND D
         left join DIGITAL_PLATFORM_DEMAND_HIS H
                   on D.PLATFORM_DEMAND_ID = H.PLATFORM_DEMAND_ID
                       and D.TENANT_ID = H.TENANT_ID
                       and H.PLATFORM_DEMAND_HIS_ID =
                           (select MAX(e.PLATFORM_DEMAND_HIS_ID)
                            from DIGITAL_PLATFORM_DEMAND_HIS e
                            where e.PLATFORM_DEMAND_ID = D.PLATFORM_DEMAND_ID)

where (:P261_SEARCH is null
   or upper(D.DEMAND_TITLE) like '%'||upper(:P261_SEARCH)||'%')
   and to_char(D.CREATED_DATE, 'yyyy') = '2024'

改动的点:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值