vimrc/sources_non_forked/vim-snippets/snippets/plsql.snippets

110 lines
1.9 KiB
Text
Raw Normal View History

# create package spec
snippet ps
create or replace package ${1:name}
as
${2:-- spec}
end; -- end of package spec $1
# create package body
snippet pb
create or replace package body ${1:name}
as
${2:-- body}
end; -- end of package body $1;
# package procedure spec
snippet pps
procedure ${1:name}(${2:args});
# package procedure body
snippet ppb
procedure ${1:name}(${2:args})
as
begin
${3:-- body}
end $2;
# package function spec
snippet pfs
function ${1:name}(${2:args})
return ${3:type};
# package function body
snippet pfb
function ${1:name}(${2:args})
return ${3:type}
as
l_res $3;
begin
${4:-- body};
return l_res;
end $1;
# snow errors
snippet err
show errors;
# proc/func in parameter
snippet p
${1:name} ${2:in} ${3:type} ${4: := null}
# package type: record
snippet tr
type tr_${1:name} is record (${2:/* columns */});
# package type: nested table
snippet tt
type tt_${1:name} is table of tr_${2:name};
# package type: indexed table
snippet tti
type tt_${1:name} is table of tr_${2:name} index by binary_integer;
# proc/func comment
snippet doc
/*
* ${1: comment ...}
*/
# plsql block
snippet beg
begin
${1}
end;
# plsql block with declare part
snippet dec
declare
${1}
begin
${2}
end;
# return pipe row
snippet rpipe
for ${1:i} in 1 .. ${2:l_res}.count loop
pipe row( $2($1) );
end loop;
return;
# bulk collect
snippet bc
bulk collect into ${1}
# local variable
snippet l
l_${1} ${2:number};
# output
snippet log
dbms_output.put_line('${1}');
# for loop
snippet for
for ${1:i} in ${2:1}..${3:42} loop
${3}
end loop;
# for loop with select
snippet fors
for ${1:rec} in (${2: select}) loop
${3}
end loop;
# for loop with collection
snippet forc
for ${1:i} in ${2:l_var}.first .. $2.last loop
${3: -- dbms_output.put_line($2($1)); }
end loop;
# if
snippet if
if ${1} then
${2}
end if;
snippet ife
if ${1} then
${2}
else
${3}
end if;