Oracle 操作函数
函数:
1.使用Create Function 语句创建
2.语
法:
Create or replace Function 函数名[参数列表]
Return 数据类型
IS|AS
局部变量
Begin
可执行语句
end;
3.访问函数
-用两种方式进行访问
使用PL/SQL块
使用SQL语句
-仅接受In参数
示例:
create or replace function
GetName(sNo varchar2)
return varchar Is --不能指定精度
name
varchar(12);
Begin
select ename into name from emp
where empno=sNo;
return name;
Exception
when
Too_many_rows then
DBMS_output.put_line('返回值多余一条');
when
Others then
DBMS_output.put_line('在执行函数GetName时出现意外错误!');
End;
/
调用
declare
name varchar(12);
begin
name:=getname('7369');
DBMS_output.put_line('结果为:'||name);
end;
/
数据字典:user_source
编译时出错的数据字
典:user_errors;
或 show errors;
select * from user_source from where
name='GETNAME'; --注意大写
过程与函数
过
程 函数
作为
PL/SQL语句执行 &nb
相关文档:
OleDbConnectioncon=newOleDbConnection(cnnstr);
try
{
con.Open();
}
catch
{}
OleDbCommandcmd=newOleDbCommand(strSQL,con);
System.Data.OleDb.OleDbDataReaderdr=cmd.ExecuteReader();
while(dr.Read())
{
stringdd=dr["gggg"].ToString();
byte[]ooo=(byte[])dr["hhhh"];
stringstr;
str=Sys ......
不错的资料,转过来,方便日后查看使用!!!
--监控索引是否使用
alter index &index_name monitoring usage;
alter index &index_name nomonitoring usage;
select * from v$object_usage where index_name =
&index_name;
--求数据文件的I/O分布
select
df.name,phyrds,phywrts,phyblkrd,phyblkwrt,sin ......
我列出我全部的做法:
table a 有id1, str1, str2, str3
开始的pk是id1, str1, str2
希望改成id1, str1, str3
--问题
小弟先有如下问题:
一个表原来的PK是 id1+str1+str2 列
先修改成id1+str1+str3列
而这三列现在当前数据库的数据有重复的情况, 小弟现在用sql:
ALTER table a a ......
alter system kill session'50,492';
--以下几个为相关表
SELECT * from v$lock;
SELECT * from v$sqlarea;
SELECT * from v$session;
SELECT * from v$process ;
SELECT * from v$locked_object;
SELECT * from all_objects;
SELECT * from v$session_wait; ......
select p.spid,
a.serial#,
c.object_name,
b.session_id,
b.oracle_username,
b.os_user_name
from v$proces ......