> 데이터 베이스 > MySQL 튜토리얼 > pl/sql传入路径和文件以及操作系统 获得相应的文件完整路径

pl/sql传入路径和文件以及操作系统 获得相应的文件完整路径

WBOY
풀어 주다: 2016-06-07 14:55:03
원래의
1202명이 탐색했습니다.

主要就是针对不同的操作系统,才必须要注意这个情况,对于在数据库中保存相应的文件路径有很大的作用 PL/SQL 文件路径 --获得解析文件路径 :传入路径,文件名,操作系统标识 w,ufunction resolve_filename (p_dir in varchar2, p_file_name in varchar2, p_o

主要就是针对不同的操作系统,才必须要注意这个情况,对于在数据库中保存相应的文件路径有很大的作用 PL/SQL 文件路径
--获得解析文件路径 :传入路径,文件名,操作系统标识 w,u
function resolve_filename (p_dir in varchar2,
                           p_file_name in varchar2,
                           p_os in varchar2 := g_os_windows) return varchar2
as
  l_returnvalue t_file_name;
begin

  /*

  Purpose:      resolve filename, ie. properly concatenate dir and filename

  Remarks:

  Who     Date        Description
  ------  ----------  --------------------------------
  MBR     01.01.2005  Created

  */
  --如果是 是 windows
  if lower(p_os) = g_os_windows then
    --如果最后一位字符时 \
    if substr(p_dir,-1) = g_dir_sep_win then
      --设定返回值为 路径+文件名称
      l_returnvalue:=p_dir || p_file_name;
    else
      --如果没有 \ 则自己加一个上去
      if p_dir is not null then
        l_returnvalue:=p_dir || g_dir_sep_win || p_file_name;
      else
        l_returnvalue:=p_file_name;
      end if;
    end if;
  --如果是unix 就为 / 思路和上面一致
  elsif lower(p_os) = g_os_unix then

    if substr(p_dir,-1) = g_dir_sep_unix then
      l_returnvalue:=p_dir || p_file_name;
    else
      if p_dir is not null then
        l_returnvalue:=p_dir || g_dir_sep_unix || p_file_name;
      else
        l_returnvalue:=p_file_name;
      end if;
    end if;
  --如果都不是 就无返回值
  else
    l_returnvalue:=null;
  end if;

  return l_returnvalue;

END resolve_filename;
로그인 후 복사
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿