暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Halo数据库对oracle系统包的支持

贾桂权 2024-06-28
77

halo作为一款成熟的国产数据库,对oracle的语法也有很好的兼容能力,以下是halo对oracle一些系统包的兼容。

一 DBMS_OUTPUT

1、enable:用来使dbms_output生效
2、disable:用来使dbms_output失效
3、put:将内容写到内存,等到put_line时一起输出
4、put_line:输出字符
5、new_line:作为一行的结束,可以理解为写入buffer时的换行符
6、get_line:获取缓冲区的单行信息
7、get_lines:以数组形式来获取缓冲区的多行信息

CALL dbms_output.disable();  --禁用输出功能CALL dbms_output.enable();   --启勇输出功能 CALL dbms_output.get_line(null,null);CALL dbms_output.get_lines(null,null);CALL dbms_output.new_line();CALL dbms_output.put('test');CALL dbms_output.put_line('halodbatabas');CALL dbms_output.serveroutput('t');

图片

二 DBMS_UTILITY

1、format_call_stack:这个内置函数返回一个格式化的字符串,它显示了执行调用堆栈:直至此函数的调用点处的所有过程或者函数的调用顺序。
2、get_time: 返回当前时间的1/100秒,它是用以前后两个取点做对比的,通常是用来取差值
CREATE or replace FUNCTION dbms_utility_test() RETURNS VOID AS $$DECLARE buff1 VARCHAR(20) := 'max';BEGIN PERFORM DBMS_UTILITY.format_call_stack(); PERFORM DBMS_UTILITY.format_call_stack(''); PERFORM DBMS_UTILITY.get_time();END;$$ LANGUAGE plpgsql;SELECT dbms_utility_test() FROM dual;

图片

三 UTL_FILE

1、fclose:关闭一个打开的文件
2、is_open:
返回类型为 BOOLEAN 的值,用于指示指定的文件已打开 (TRUE) 还是已关闭 (FALSE)。
3、tmpdir:
表示数据库服务器上的临时目录路径

CALL utl_file.fclose(null);CALL utl_file.fclose_all();SELECT utl_file.is_open(null) FROM dual;SELECT utl_file.tmpdir() FROM dual;

图片

4 DBMS_ALERT

1、register:为当前会话注册一个预警事件
2、remove: 
删除当前会话的一个预警事件
3、removeall:
删除当前会话下所有的预警事件
4、signal:
给预警事件发送消息,当前事务提交时生效

CALL dbms_alert.register('myname');CALL dbms_alert.remove('myname');CALL dbms_alert.removeall();CALL dbms_alert.signal('myname',null);

图片

5 DBMS_PIPE

1、next_item_type:返回缓冲区中下一个数据成员的数据类型
2、remove_pipe:删除一个显式的私有或公有管道
3、reset_buffer:清除本地缓冲区的消息
4、
send_message:从会话的本地消息缓冲区中将一条消息发送到指定的管道
5、
unique_session_name:返回当前会话的一个唯一名称
6、
unpack_message:将本地消息缓冲区中消息的数据项复制到程序变量中
SELECT dbms_pipe.next_item_type() FROM dual;SELECT dbms_pipe.remove_pipe(null) FROM dual;CALL dbms_pipe.reset_buffer();SELECT dbms_pipe.send_message('pipe') FROM dual;SELECT dbms_pipe.send_message('pipe',null) FROM dual;SELECT dbms_pipe.send_message('pipe',null,null) FROM dual;SELECT dbms_pipe.unique_session_name() FROM dual;CALL dbms_pipe.unpack_message('aa');

图片

6 DBMS_RANDOM

1、value:生成一个0~1间的随机小数(包括0,不包括1)
2、value(m,n):生成一个m~n间的随机小数(包括m和不包括n)

3、initialize:用于初始化dbms_random包,必须提供随机数种子
4、random:
生成一个从-power(2,31)到power(2,31)的整数值,注意,区间为左闭右开。
5、seed:生成一个指定起始点的随机数,对于相同的seed而言,随机数任意一次变化都是确定的。
6、string:

生成一个指定模式指定位数的随机字符串,可选模式如下:
'u'或'U',仅返回大写字母
'l'或'L',仅返回小写字母
'a'或'A',返回大小写字母混合
'x'或'X',返回大写字母和数字混合
'p'或'P',返回任意可显示字符
7、terminate:关闭DBMS_RANDOM包
SELECT dbms_random.value() FROM dual;SELECT dbms_random.value(10,20) FROM dual;CALL dbms_random.initialize(1);SELECT dbms_random.random();CALL dbms_random.seed(1);SELECT dbms_random.string('a',10) FROM dual;CALL dbms_random.terminate();

图片

以上就是halo数据库对oracle一些系统包的支持,感兴趣的同学可以自己尝试测试一下。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论