存储赋权
存储逻辑处理有返加值
存储有异常处理
create or replace procedure proc_grant(OWNER VARCHAR2,OWNERAPP VARCHAR2,OWNERREAD VARCHAR2)
AS
V_OBJECT VARCHAR(128);
CURSOR BRANCH01 IS SELECT OBJECT_NAME FROM USER_OBJECTS T WHERE OBJECT_TYPE IN('TABLE','VIEW');
CURSOR BRANCH02 IS SELECT OBJECT_NAME FROM USER_OBJECTS T WHERE OBJECT_TYPE IN('FUNCTION','FROCEDURE','PACKAGE');
CURSOR BRANCH03 IS SELECT OBJECT_NAME FROM USER_OBJECTS T WHERE OBJECT_TYPE IN('SEQUENCE');
BEGIN
V_OBJCET :='';
OPEN BRANCH01;
LOOP
FETCH CUR_BRANCH01
INTO V_OBJECT;
EXIT WHEN CUR_BRANCH01%NOTFOUND;
IF LENGTH(TRIM(OWNERAPP))>0
THEN
EXECUTE IMMEDIATE 'GRANT SELECT,INSERT,DELETE,UPDATE ON '||V_OBJECT||' TO '||OWNERAPP;
EXECUTE IMMEDIATE 'CREATE OR REPLACE SYNONYM '||OWNERAPP||'.'||V_OBJECT||' FOR '||OWNER||'.'||V_OBJECT;
END IF;
END LOOP;
CLOSE BRANCH01
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE(SQLCODE || SQLERRM);
WHEN OTHERS THEN
INSERT INTO LOG(ECODE,EMESSAGE,EINFO) VALUES(V_ERRCODE,V_ERRMSG,V_INFORMATION);
COMMIT;
RETURN
END proc_grant;
例2:
Connection conn=ConUtil.getConnectio n();
CallableStatement proc;
int res=0;
proc=conn.prepareCall("{call proc1(?)}");
proc.registerOutParameter(1,Types.NUMBERIC);
proc.execute();
res=proc.getInt(1);
con.close();
分享到:
相关推荐
11.11.4 使用存储过程、用户定义函数和视图来管理应用程序安全 11.11.5 使用一个代理用户来管理应用程序安全 11.11.6 使用应用程序角色来管理应用程序安全 11.12 小结 11.13 练习 第12章 SQL Server 2000中的XML支持...
开发人员如果用到其他库的Table或View,务必在当前库中建立View来实现跨库操作,最好不要直接使用“databse.dbo.table_name”,...高程序运行效率,优化应用程序,在SP编写过程中应该注意SQL、索引、tempdb的使用规范。
11.11.4 使用存储过程、用户定义函数和视图来管理应用程序安全 11.11.5 使用一个代理用户来管理应用程序安全 11.11.6 使用应用程序角色来管理应用程序安全 11.12 小结 11.13 练习 第12章 SQL Server 2000中的XML支持...
MSSQL加密/恢复存储过程、视图、触发器的存储过程。用途:解密/加密存储过程,视图,触发器。方法:在数据库创建此存储过程,通过 exec sp_decrypt '存储过程明字'。
系统存储过程主要存储在master数据库中,以“sp”下划线开头的存储过程。尽管这些系统存储过程在master数据库中,但我们在其他数据库还是可以调用系统存储过程。有一些系统存储过程会在创建新的数据库的时候被自动...
利用sp_who_lock这个存储过程,可以很方便的知道哪个进程出现了死锁,出现死锁的问题在哪里. 创建sp_who_lock存储过程 CREATE procedure sp_who_lock as begin declare @spid int declare @blk int declare @...
下面分别是mssql导出到excel,excel导入到mssql的存储过程,复制到查询分析器中,执行后得到sp_out和sp_in2两个存储过程,本人已经成功应用在商业项目中,不是精华我不发
一般不需要这一步,直接配置即可)本文给出一个使用实例,结合存储过程和Job来实现定时从数据库发送邮件:1、创建存储过程,在新建的存储过程中调用sp_send_dbmail存储过程(注:代码中的\’只是添加代码时自动添加...
存储过程-自动备份并压缩,清除过时备份文件(添加远程备份和远程清理功能), 自己写的, 已经应用于生产中的, 使用前请根据自己的现场做简单修改, 1. 修改一下本地存储路径; 2. 修改远程存储路径; 3.修改远程访问的...
此问题会影响使用分布式事务的链接服务器、分布式查询以及远程存储过程。为了避免出现此类问题,您必须在安装有 SQL Server Express 的服务器中完全启用 MS DTC 服务。 若要完全启用 MS DTC,请执行下列操作: 在...
讲解SQL语言的应用,提供了近500个曲型应用,读者可以随查随用,深入讲解SQL语言的各种查询语句,详细介绍数据库设计及管理,详细讲解存储过程、解发器和游标等知识,讲解了SQL语言在高级语言中的具体应用。...
本文档的主要内容详细介绍的是DSP设计与应用教程之TMS320C54XDSP寻址方式的详细资料说明包括了:1、寻址与寻址方式 ,2、立即寻址,3、绝对寻址,4、累加器寻址,5、直接寻址,6、间接寻址,7、MMR寻址,8、堆栈寻址...
写了相应的存储过程和视图;在系统客户端设计中,设计了界面的框架,开 发了客户端的应用程序;并在论文最后给出系统的具体实现。 测试结果表明,系统运行平稳可靠,说明了所用设计理论与设计方法的 正确性和有效性...
构建 .NET Web 应用程序的过程中使用了很多技术。为了构建有效的应用程序级别的身份验证和授权策略,您需要了解如何在每一种产品和技术领域内优化各种安全功能,以及如何使它们协同作用以提供纵深防御的有效安全策略...
4.8 数据存储能力 6 4.9 终端适配能力 6 4.10 离线运行能力 7 4.11 多WIDGET应用并发和交互 7 4.12 用户注册认证 7 4.13 引擎管理能力 7 4.14 WIDGET应用管理 7 4.15 终端管理功能(可选) 8 4.16 信息发布能力(可...
2.针对所有数据库查询语句进行优化,重写数据分页的存储过程,为大数据量及超大数据库做好准备; 3.缓存设计为Provider模式,可以很方便的替换成分布式缓存;重新设计缓存职能及缓存策略,提高缓存使用效率,...
2.针对所有数据库查询语句进行优化,重写数据分页的存储过程,为大数据量及超大数据库做好准备; 3.缓存设计为Provider模式,可以很方便的替换成分布式缓存;重新设计缓存职能及缓存策略,提高缓存使用效率,...
SQL Server 通过 sp_getapplock / sp_releaseapplock 对系统存储过程提供应用程序可管理的锁机制。 它们为应用程序代码提供了一种使用 SQL 的底层锁定机制的方法,而不必锁定数据库行。 锁可以绑定到事务或会话,...
7.2 数据结构及存储空间的分配 7.3 消息队列发送消息和取得消息的操作 7.4 EN-OS-Q-CHK及相关代码 7.5 建立一个消息队列 7.6 等待一个消息队列中的消息 7.7 向消息队列发送一个消息(FIFO) 7.8 向消息队列发送一个...
1、 未能找到存储过程'master..xpcmdshell' 这种情况我看到网上的方法是: 第一步先删除: drop procedure sp_addextendedproc drop procedure sp_oacreate exec sp_dropextendedproc 'xp_cmdshell' 第二步恢复: ...