请问在 SQL> var v1 varchar2(100); 这句话是什么意思?

在SQL*PLUS中调用函数, SQL> var v1 varchar2(100); SQL> exec :v1:=get_user 这句话是什么意思


MYYA
浏览 529回答 5
5回答

拉丁的传说

SQL> var v1 varchar2(100);------------创建变数 v1SQL> exec :v1:=get_user---------------get_user赋值给v1调用函数 get_user使用变数v1 接收函数get_user 返回的值

慕码人2483693

可以使用 execute immediate--FYI--execute immediate不支持多行返回,如果需要可新建临时表declarev_source_sql varchar2(1000);v_union_sql varchar2(1000);beginselect column_name into v_source_sql from table_name ;--get source sqlv_union_sql='select * from tablename2,('||v_source_sql ||') h where ......';--sql str-- 之前先创建好所需字段的temp_tableexecute immediate('insert into temp_table '||v_union_sql );--在临时表中就是你所需要的数据。exception ......--如果只是需要返回单行数据,则可将execute immediate嵌入在sql中使用--execute immediate str into parameter1 ,parmeter2...--返回参数where column=:parameter....条件参数

慕容3067478

oralce支持自定义函数的。语法如下: create or replace function function_name  (  argu1 [mode1] datatype1,  argu2 [mode2] datatype2, ........  )  return datatype  is  begin  end;  执行 var v1 varchar2(100)  exec :v1:=function_name

catspeake

oralce支持自定义函数。具体语法如下:create or replace function function_name  (argu1 [mode1] datatype1,  argu2 [mode2] datatype2, ........)  return datatype  is  begin  end;  执行 var v1 varchar2(100)  exec :v1:=function_name

湖上湖

当然可以,create function +函数名参数列表return 类型asbegin语句;end
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

SQL Server