CUBRID学习笔记 38 net调用java的函数过程
首先要设置java_stored_procedure 为yes 该配置项在cubrid.conf中
书写并编译java代码
public
class
SpCubrid{
public
static
String HelloCubrid() {
return
"Hello, Cubrid !!"
;
}
public
static
int
SpInt(
int
i) {
return
i +
1
;
}
public
static
void
outTest(String[] o) {
o0 =
"Hello, CUBRID"
;
}
}
%javac SpCubrid.java
create
function
hello()
return
string
as
language java
name
'SpCubrid.HelloCubrid() return java.lang.String'
;
2
3
|
call Hello() into :HELLO; call Sp_int(3) into :i; call phone_info( 'Tom' , '016-111-1111' ); |
下面看个完整的代码
创建java方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
using CUBRID.Data.CUBRIDClient; namespace Sample { class ProcedureSample { /* conection string */ /* Please modify before using. */ static readonly string _connString = "server=127.0.0.1;database=demodb;port=33000;user=public;password=" ; /* * create a new java stored function */ public void create_function() { using (CUBRIDConnection conn = new CUBRIDConnection()) { conn.ConnectionString = ProcedureSample._connString; conn.Open(); string sql = "CREATE FUNCTION unit_hello(a int) RETURN int AS LANGUAGE JAVA NAME " + "'SpCubrid.SpInt(int) return java.lang.Integer;'" ; using (CUBRIDCommand cmd = new CUBRIDCommand(sql, conn)) { cmd.ExecuteNonQuery(); } } } /* * create a new java stored procedure */ public void create_procedure() { using (CUBRIDConnection conn = new CUBRIDConnection()) { conn.ConnectionString = ProcedureSample._connString; conn.Open(); string sql = "create PROCEDURE UNIT_PHONE_INFO(name varchar, phoneno varchar)" + "as language java name 'SpCubrid.AddPhone(java.lang.String,java.lang.String)';" ; using (CUBRIDCommand cmd = new CUBRIDCommand(sql, conn)) { cmd.ExecuteNonQuery(); } } } } } |
调用
using
System.Data;
using
CUBRID.Data.CUBRIDClient;
namespace
Sample
{
class
ProcedureSample
{
/* conection string */
/* Please modify before using. */
static
readonly
string
_connString =
"server=127.0.0.1;database=demodb;port=33000;user=public;password="
;
/*
* call procedure
*/
public
void
call_procedure()
{
using
(CUBRIDConnection conn =
new
CUBRIDConnection())
{
conn.ConnectionString = ProcedureSample._connString;
conn.Open();
string
sql =
"CALL UNIT_PHONE_INFO('Tom', '03556315315');"
;
using
(CUBRIDCommand cmd =
new
CUBRIDCommand(sql, conn))
{
cmd.ExecuteNonQuery();
}
}
}
/*
* call function, the function has a return value
*/
public
void
call_function()
{
using
(CUBRIDConnection conn =
new
CUBRIDConnection())
{
conn.ConnectionString = ProcedureSample._connString;
conn.Open();
string
sql =
"? = CALL unit_hello(10)"
;
using
(CUBRIDCommand cmd =
new
CUBRIDCommand(sql, conn))
{
cmd.CommandType = CommandType.StoredProcedure;
CUBRIDParameter p1 =
new
CUBRIDParameter(
"?p1"
, CUBRIDDataType.CCI_U_TYPE_INT);
p1.Direction = ParameterDirection.Output;
// output
cmd.Parameters.Add(p1);
cmd.ExecuteNonQuery();
// do something with p1.value
}
}
}
}
}
删除
using
CUBRID.Data.CUBRIDClient;
namespace
Sample
{
class
ProcedureSample
{
/* conection string */
/* Please modify before using. */
static
readonly
string
_connString =
"server=127.0.0.1;database=demodb;port=33000;user=public;password="
;
/*
* drop java stored function
*/
public
void
drop_function()
{
using
(CUBRIDConnection conn =
new
CUBRIDConnection())
{
conn.ConnectionString = ProcedureSample._connString;
conn.Open();
string
sql =
"drop function unit_hello"
;
using
(CUBRIDCommand cmd =
new
CUBRIDCommand(sql, conn))
{
cmd.ExecuteNonQuery();
}
}
}
/*
* drop java stored procedure
*/
public
void
drop_procedure()
{
using
(CUBRIDConnection conn =
new
CUBRIDConnection())
{
conn.ConnectionString = ProcedureSample._connString;
conn.Open();
string
sql =
"DROP PROCEDURE UNIT_PHONE_INF"
;
using
(CUBRIDCommand cmd =
new
CUBRIDCommand(sql, conn))
{
cmd.ExecuteNonQuery();
}
}
}
}
}
CUBRID学习笔记 38 net调用java的函数过程的更多相关文章
- Web Service学习笔记:动态调用WebService
原文:Web Service学习笔记:动态调用WebService 多数时候我们通过 "添加 Web 引用..." 创建客户端代理类的方式调用WebService,但在某些情况下我 ...
- 【Java】「深入理解Java虚拟机」学习笔记(1) - Java语言发展趋势
0.前言 从这篇随笔开始记录Java虚拟机的内容,以前只是对Java的应用,聚焦的是业务,了解的只是语言层面,现在想深入学习一下. 对JVM的学习肯定不是看一遍书就能掌握的,在今后的学习和实践中如果有 ...
- hive 调用java的函数和科学记数法转换
hive中field如果是string,比如id,那么使用10000000000+id结果是科学计数法显示,转换为正常显示方法: select (10000000000+cast(id as int) ...
- MYSQL学习笔记三:日期和时间函数
MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...
- [原创]java WEB学习笔记38:EL 中的 11个 隐含对象 详解
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- Java学习笔记(二)——Java操作properties文件
[前面的话] 前段时间在学习和玩java web相关的东西,对于这些技术,一边学习,一边做东西,一边总结,希望可以一边成长和有所收获.有时总是思考太多反而成为了前进的阻力,所以对于生活还是简单一些,不 ...
- CUBRID学习笔记 1 简介 cubrid教程
CUBRID 是一个全面开源,且完全免费的关系数据库管理系统.CUBRID为高效执行Web应用进行了高度优化,特别是需要处理大数据量和高并发请求的复杂商务服务.通过提供独特的最优化特性,CUBRID可 ...
- CUBRID学习笔记 48查询优化
cubrid的中sql查询语法 查询优化 c#,net,cubrid,教程,学习,笔记欢迎转载 ,转载时请保留作者信息.本文版权归本人所有,如有任何问题,请与我联系wang2650@sohu.com ...
- CUBRID学习笔记 47 show
cubrid的中sql查询语法show c#,net,cubrid,教程,学习,笔记欢迎转载 ,转载时请保留作者信息.本文版权归本人所有,如有任何问题,请与我联系wang2650@sohu.com . ...
随机推荐
- html规范整体结构
<!DOCTYPE html><html lang="zh"><head> <meta charset="utf-8" ...
- 如何在视频处理控件TVideoGrabber中设置音频捕捉设备
TVideoGrabber不仅可以捕捉视频,还可以作为多媒体播放器,并支持包括C#..NET.VB.NET.C++.Delphi.C++Builder和ActiveX平台,本文将剖析TVideoGra ...
- Oracle中merge into的使用
http://blog.csdn.net/yuzhic/article/details/1896878 http://blog.csdn.net/macle2010/article/details/5 ...
- 测试过程中LR的关联报错
在测试过程中,录制的脚本会做一些关联.在测试的过程中,常常出现关联失败的情况. 如果最后的结果有检查点,检查点失败而事务失败. 每次出现这样的情况,我都不知道如何办.为了不出现错误,我都在关联函数里面 ...
- cpu和memory性能监控
cpu性能监控 #!/bin/bash column_count= i= m= is_want= str_msg=""; file_name=./test/`date +%Y-%m ...
- vmdk虚拟机转换为OVF模板,导入esxi
VMware WorkStation安装目录下,有一个OVFTool文件夹,例如我电脑上的路径为:D:\VMware\VMware\OVFTool.通过CMD进入到命令行模式,更改到该目录下,运行如下 ...
- HDU 5961:传递(暴搜)
http://acm.hdu.edu.cn/showproblem.php?pid=5961 题意:中文题意.给出两个图,判断这个两个图是否都是传递的.注意一下传递的定义要看清,一开始没看清连样例都看 ...
- java 错误集锦
Exception in thread "main" java.lang.Error: Unresolved compilation problem: at com.niuniu. ...
- cookie学习
cookie是储存于访问者的计算机中的变量,每当同一台计算机通过浏览器请求某个页面时,就会发送这个cookie,可以使用javascript来创建和取回cookie的值. 创建和存储cookie 首先 ...
- springmvc配置文件-1
项目1: web.xml <?xml version="1.0" encoding="UTF-8" standalone="no"?& ...