SAP HANA procudure 创建用户
SAP HANA中的用户是没有功能进行直接的拷贝的,但是我们可以通过建立存储过程调用,通过sql语句的方式进行拷贝:
存储过程定义如下,各位可根据自己的需求进行修改:
CREATE PROCEDURE SYSTEM.COPY_USER (IN V_SOURCE_USER NVARCHAR(256), IN V_TARGET_USER NVARCHAR(256), IN V_TARGET_PWD NVARCHAR(256)) LANGUAGE SQLSCRIPT AS
V_FOUND INT := 1;
CURSOR C_ROLE_LIST (V_SRC_USER NVARCHAR(256)) FOR
SELECT ROLE_NAME, IS_GRANTABLE FROM "SYS"."GRANTED_ROLES" WHERE GRANTEE=:V_SRC_USER AND GRANTEE_TYPE='USER' AND GRANTOR=CURRENT_USER;
BEGIN
SELECT COUNT(*) INTO V_FOUND FROM "SYS"."USERS" WHERE USER_NAME = :V_SOURCE_USER;
IF :V_FOUND = 1 THEN
EXEC 'CREATE USER ' || :V_TARGET_USER || ' PASSWORD ' || :V_TARGET_PWD;
FOR V_LIST_ROW AS C_ROLE_LIST(:V_SOURCE_USER) DO
IF V_LIST_ROW.IS_GRANTABLE='FALSE' THEN
EXEC 'GRANT ' || V_LIST_ROW.ROLE_NAME || ' TO ' || :V_TARGET_USER;
ELSE
EXEC 'GRANT ' || V_LIST_ROW.ROLE_NAME || ' TO ' || :V_TARGET_USER || ' WITH ADMIN OPTION';
END IF;
END FOR;
END IF;
END;
调用方式如下:
CALL SYSTEM.COPY_USER ('SYSTEM', 'Ivan', 'Initial1');
CALL COPY_USER ('SOURCE_USER', 'TARGET_USER', 'INITIAL_PASSWORD')
在密码参数设置的时候,注意密码最短长度为8位,需要大小写和数据混合密码。
根据这个存储过程的使用方法,我们可以延伸出角色拷贝等多种应用场景!
SAP HANA procudure 创建用户的更多相关文章
- SAP HANA中创建计算视图(Calculation View)
[Step By Step]SAP HANA中创建计算视图(Calculation View) Demo Instruction: 该视图将两个表AUDIOBOOKS和BOOKS中的数据进行连接,并作 ...
- 【HANA系列】SAP HANA XS创建XSJOB后台执行
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS创建XSJ ...
- SAP HANA中创建分析权限(Analytic Privilege)
Demo Instruction: 假定CustomerID > 100的为VIP客户,我们的权限设置为只显示VIP客户 所使用的Attribute View: ATTR_CUSTOMER_FU ...
- SAP HANA中创建层次分析视图(Hierarchy Analytic View)
1. 创建层次Attribute View: ATTR_PRODUCT_HIERACHY ref: http://www.cnblogs.com/omygod/archive/2013/04/30/ ...
- SAP HANA studio 创建分析视图
[Step By Step]SAP HANA中创建分析视图(Analytic View) 1. 在Modeler视图中点击新建Analytic View 2. 设置分析视图的属性 Name: 分析视图 ...
- SAP HANA中的SLT简介
在以SAP系统作为主要ERP的企业中,不同系统之间的数据库数据同步是个重要的工作.对于这种需求,除了开发ABAP接口之外,也有高效的工具可用.SLT就是其中之一. SLT是SAP的第一个ETL(Ext ...
- SAP HANA 创建属性视图
[Step By Step]SAP HANA创建属性视图(Attribute View) Demo Instruction: 从一张用户信息表中组合出相信地址. 1. 在modeler窗口中,找到相应 ...
- 【HANA系列】SAP HANA查看某一用户最后登录时间及无效连接次数
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA查看某一用户最后 ...
- 【MM系列】SAP S/4 HANA BP创建客户/供应商的一点想法
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP S/4 HANA BP创建客 ...
随机推荐
- ExpandoObject,DynamicObject,DynamicMetaObject
ExpandoObject,DynamicObject,DynamicMetaObject 接上文:浅谈Dynamic关键字系列之三(上) 为什么TryXXX方法没有被调用?? 将DynamicPro ...
- 传说中的WCF(1):这东西难学吗?
WCF难学吗? 是啊,这问题估计很多人都会问,也包括阿拉在内,也有此深刻而严重的凝问. 也有人说:“如何某项技术可以化繁为简,学起来轻松一点就好了.”也许,人类开生就摆脱不了一种习性——懒惰:不过,也 ...
- REST风格的服务
使用ASP.NET Web Api构建基于REST风格的服务实战系列教程[三]——Web Api入门 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.htm ...
- MongoDB:利用官方驱动改装为EF代码风格的MongoDB.Repository框架 三
本次改动的主要内容是实现MongoDB.Repository在MongoDB中建立索引. 建立索引主要使用MongoDB的官方驱动中EnsureIndex方法. 在MongoDB.Repository ...
- 企业架构研究总结(44)——企业架构与建模之Archimate视图和视角
3. ArchiMate的视角与视图 创建.维护一个企业架构是一件非常复杂繁琐的事情,因为这项工作需要面对许多背景.利益各异的干系人,对他们所关注的问题进行解答,并能够在他们之间形成无障碍的沟通流.为 ...
- Redis系统学习 三、使用数据结构
前言:上一章,简单介绍了5种数据结构,并给出了一些用例.现在是时候来看看一些高级的,但依然很常见的主题和设计模式 一.大O表示法(Big O Notation ) 常用时间复杂度O(1)被认为是最快速 ...
- ASP.NET WebAPI HTTPS
参照文档 http://southworks.com/blog/2014/06/16/enabling-ssl-client-certificates-in-asp-net-web-api/ 第一 ...
- vsftp FTP服务器外网访问设置
引用: linux中VSFTP无法从外网访问问题! http://blog.csdn.net/zbulrush/article/details/841978 原文: FTP协议有两种工作方式:PORT ...
- hdu 1698 Just a Hook(线段树基础)
成段更新的线段树,加入了延时标记............ 线段树这种东西细节上的理解因人而异,还是要自己深入理解......慢慢来 #include <iostream> #include ...
- java实现商品实时录入
//代表各的主页面 package com.gui; import java.awt.*; import javax.swing.*; import java.awt.event.*; import ...