公众号:SAP Technical
本文作者:matinal
 

前言部分

本文介绍SAP HANA XS使用服务器端JavaScript API。

SAP HANA扩展应用程序服务(SAP HANA XS)提供了一组服务器端JavaScript应用程序编程接口(API),可配置应用程序与SAP HANA进行交互。

API介绍

SAP HANA XS JavaScript Reference列出了在应用程序和SAP HANA之间编程交互时可用的所有功能。例如,可以使用数据库API从应用程序内部调用SQL语句,或使用请求处理API访问SAP HANA数据的当前HTTP请求的详细信息.AP HANA XS包含以下服务器端JavaScript API集:Database、Outbound connectivity、Request processing、Session、Job Schedule、Security、Trace、Utilities、XS Data Services、XS Procedures这里不再详细介绍每一个API的用处。

介绍几个API

简单说几个如下:

1、Database API

SAP HANA XS数据库API($ .hdb)提供了能够简单方便地访问数据库的工具。

$ .hdb命名空间旨在替代旧的$ .db命名空间。 由于$ .hdb和$ .db API使用不同的数据库连接,因此避免在单个http请求中使用这两个API,例如更新相同的表,可能会导致死锁等等等这样的问题。

那么,$.hdb有哪些可用选项呢。

$ .hdb.Connection:与SAP HANA数据库建立连接。

$ .hdb.ProcedureResult:表示对SAP HANA数据库的存储过程调用的结果。

$ .hdb.ResultSet:表示数据库查询的结果。

举例前,说明一点:默认情况下,自动提交模式被禁用,这意味着所有的数据库更改都必须被明确的提交。

var connection = $.hdb.getConnection();
connection.executeUpdate('UPDATE "DB_EXAMPLE"."ICECREAM" SET QUANTITY=? WHERE FLAVOR=?', 9, 'CHOCOLATE');
connection.commit();

以下SAP HANA XS数据库API的使用示例显示了如何建立与SAP HANA的连接并从指定的过程调用返回结果集。请看存储过程参数部分:

这样可用访问结果集,最好访问结果集的JSON格式,还要注意一点$ resultSets不可枚举。

2、JOB API

在SAP HANA XS中,通过.xsjob文件创建计划作业,该文件是提交(并激活)SAP HANA存储库的设计时文件。 .xsjob文件可用于定义在后台运行的循环任务; 作业计划API允许开发人员从这些作业中添加和删除计划。 作业计划API提供以下工具:

$ .jobs.Job:表示预定的XS作业。

$ .jobs.JobLog:提供对计划作业的日志条目的访问。

$ .jobs.JobSchedules:可以控制XS作业的计划。

作为XS作业的一部分,不可能调用$ .request和$ .response对象。XS作业API $ .jobs.Job能够在其中定义的作业添加计划(并从中删除计划)一个.xsjob文件。

举个栗子,来说明,服务器端JavaScript如何使用作业计划API向现有作业添加计划并从现有作业中删除计划。

如果URI中引用的XS作业文件与被调用的XS JavaScript或SQLScript函数不在同一个包中,则必须将完整的包路径添加到上述示例第1行中所示的URI中指定的XS作业文件 ,例如</ path / to / package>> MyXSjob.xsjob。

此外,sqlcc / otheruser.xssqlcc中定义的SQL连接用于修改作业; 它不用于执行myJob.xsjob中指定的作业。要了解xscron作业调度程序所需的类似cron的语法,我就来简单讲解一下这里的参数,其实很简单啦,下面就和matinal一起解析这些参数。

比如:2013 * * fri 12 0 0

这样写就代表:2013年每周五12点执行此JOB。是不是很简单。

好了,本文就暂时讲解这两种SAP HANA XS的JavaScript API的用法。

【HANA系列】SAP HANA XS的JavaScript API详解的更多相关文章

  1. 【HANA系列】【第五篇】SAP HANA XS的JavaScript API详解

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列][第五篇]SAP HANA XS ...

  2. 【HANA系列】【第二篇】SAP HANA XS使用JavaScript编程详解

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列][第二篇]SAP HANA XS ...

  3. 【HANA系列】SAP HANA XS使用JavaScript编程详解

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS使用Jav ...

  4. 【HANA系列】SAP HANA XS使用服务器JavaScript Libraries详解

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS使用服务器 ...

  5. 【HANA系列】【第四篇】SAP HANA XS使用服务器JavaScript Libraries详解

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列][第四篇]SAP HANA XS ...

  6. Lucene系列六:Lucene搜索详解(Lucene搜索流程详解、搜索核心API详解、基本查询详解、QueryParser详解)

    一.搜索流程详解 1. 先看一下Lucene的架构图 由图可知搜索的过程如下: 用户输入搜索的关键字.对关键字进行分词.根据分词结果去索引库里面找到对应的文章id.根据文章id找到对应的文章 2. L ...

  7. JavaScript事件详解-Zepto的事件实现(二)【新增fastclick阅读笔记】

    正文 作者打字速度实在不咋地,源码部分就用图片代替了,都是截图,本文讲解的Zepto版本是1.2.0,在该版本中的event模块与1.1.6基本一致.此文的fastclick理解上在看过博客园各个大神 ...

  8. JavaScript事件详解-zepto的事件实现

    zepto的event 可以结合上一篇JavaScript事件详解-原生事件基础(一)综合考虑源码暂且不表,github里还有中文网站都能下到最新版的zepto.整个event模块不长,274行,我们 ...

  9. 转】Mahout推荐算法API详解

    原博文出自于: http://blog.fens.me/mahout-recommendation-api/ 感谢! Posted: Oct 21, 2013 Tags: itemCFknnMahou ...

随机推荐

  1. interface21 - web - DispatcherServlet(DispatcherServlet初始化流程)

    前言 最近打算花点时间好好看看spring的源码,然而现在Spring的源码经过迭代的版本太多了,比较庞大,看起来比较累,所以准备从最初的版本(interface21)开始入手,仅用于学习,理解其设计 ...

  2. java 判断两个时间段是否有交集

    /* 开始时间 */ Date leftStartDate = feesPreferential.getPreferentialStartTime(); /* 结束时间 */ Date leftEnd ...

  3. 迁移基于Microsoft.DirectX的AudioRecoder类到SharpDX上

    最近迁移项目到x64上,要处理的东西还是蛮多的,所以我要在说一次,不到万不得已不要用COM组件,要用COM组件也得首先考虑不需要我们关心平台的做法,或者得有64位版本. 比如Office的COM组件调 ...

  4. javascript的作用域和优先级

    变量的作用域是在定义时决定的,不是在运行时活动对象是在运行时决定的?如果就创建一个对象,使用完毕就完了,就使用json字面量的方式如果对象被反复创建,反复使用,就使用自定义的构造函数方式优先级内部变量 ...

  5. vuex的使用总结

    一.安装命令    npm install vuex 二.在src文件目录下新建一个名为store的文件夹,为方便引入并在store文件夹里新建一个index.js,里面的内容如下: import V ...

  6. netty源码解解析(4.0)-5 线程模型-EventExecutorGroup框架

    上一章讲了EventExecutorGroup的整体结构和原理,这一章我们来探究一下它的具体实现. EventExecutorGroup和EventExecutor接口 io.netty.util.c ...

  7. js a标签 + ajax 多参数穿参

    <span onclick="return haoping('{$row['jv_id']}','1')"> function haoping(id,type){ $. ...

  8. 菜鸟入门【ASP.NET Core】5:命令行配置、Json文件配置、Bind读取配置到C#实例、在Core Mvc中使用Options

      命令行配置 我们通过vs2017创建一个控制台项目CommandLineSample 可以看到现在项目以来的是dotnet core framework 我们需要吧asp.net core引用进来 ...

  9. [android] 手机卫士手机实现短信指令获取位置

    获取位置  新建一个service的包 新建一个GPSService类继承系统的Service类 清单文件中注册一下 重写onCreate()方法,服务创建的时候回调 重写onDestroy()方法, ...

  10. Linux常用基本命令:三剑客命令之-awk格式化动作

    我们之前说过,awk是一个超强的文本格式化工具,而本文的printf动作就是经常用来做格式化文本的.使用方式跟c语言的printf差不多. 1,printf默认不会回车换行 ghostwu@dev:~ ...