GVKun编程网logo

Oracle CTE合并(oracle合并数据)

18

这篇文章主要围绕OracleCTE合并和oracle合并数据展开,旨在为您提供一份详细的参考资料。我们将全面介绍OracleCTE合并的优缺点,解答oracle合并数据的相关问题,同时也会为您带来7、

这篇文章主要围绕Oracle CTE合并oracle合并数据展开,旨在为您提供一份详细的参考资料。我们将全面介绍Oracle CTE合并的优缺点,解答oracle合并数据的相关问题,同时也会为您带来7、Oracle的;与ORA-00911: invalid character、dotConnect for Oracle怎么样进行OracleClient迁移?、hbase权威指南: store file合并(compaction)、kettle 连接 oracle 报错 oracle.i18n.text.converter.CharacterConverter.OGS.getInstance (I) Loracle/i18n/text...的实用方法。

本文目录一览:

Oracle CTE合并(oracle合并数据)

Oracle CTE合并(oracle合并数据)

我正在尝试使用CTE(通用表表达式)的简单合并语句。但它给出了一个错误

MERGE INTO  emp targ USING (*ERROR at line 4:ORA-00928: missing SELECT keyword

合并语句中是否不允许CTE?我的SQL如下:

WITH cte AS (  SELECT empno, ename     FROM EMP)MERGE INTO emp targ USING (SELECT *                              FROM cte) src  ON (targ.empno = src.empno)WHEN MATCHED THEN update    SET targ.ename = src.enameWHEN NOT MATCHED THEN insert    (empno,ename)  VALUES    (src.empno,src.ename)/

答案1

小编典典

WITH子句与SELECT语句一起使用。

从文档中:
“您可以在任何顶级 SELECT 语句和大多数子查询类型中指定此子句。” (强调我的)。

如果您确实需要这样做,可以使用ORAFAQ中的解决方法。主要博客文章在这里。

7、Oracle的;与ORA-00911: invalid character

7、Oracle的;与ORA-00911: invalid character

写SQL查询Oracle中的数据时容易遇到一个奇怪的问题:在一般的sql developer查询分析器中写好的sql语句运行一切正常,放到C#写的程序中提交 ORACLE执行就报错。错误代码如下:

ORA-00911: invalid character

这个问题是";"导致的。一般我们写sql的时候都喜欢在每个语句结尾加上":",这也是一般写sql的程序员的习惯。因为很多sql的查询分析其时都会将这个分号当成一个语句的结束。但是,其实在正式执行的时候,因为Oracle的语法解析器特别严格,就会报出以上的错误出来,因此不能将这个分号扔到Oracle的解析器中的,解决方法也很简单,去掉分号就可以了。

在MysqL时我们通常可以执行多条语句“...;...;...;...;...;”这样,在ORACLE这里就行不通,需要在程序里对sql语句按照";"进行分割后分别执行。还有一种思路就是在语句后使用"/"迅速执行。

另外,";"在ORACLE的语句中并非是不能存在的,比如在函数、存储过程等都是可以存在的。

dotConnect for Oracle怎么样进行OracleClient迁移?

dotConnect for Oracle怎么样进行OracleClient迁移?

dotConnect for Oracle怎么样进行OracleClient迁移?  接口和 行为差异要怎么解决呢?

hbase权威指南: store file合并(compaction)

hbase权威指南: store file合并(compaction)

????????? hbase为了防止小文件(被刷到磁盘的menstore)过多,以保证保证查询效率,hbase需要在必要的时候将这些小的store file合并成相对较大的store file,这个过程就称之为compaction。在hbase中,主要存在两种类型的compaction:minor? compaction和maj

????????? hbase为了防止小文件(被刷到磁盘的menstore)过多,以保证保证查询效率,hbase需要在必要的时候将这些小的store file合并成相对较大的store file,这个过程就称之为compaction。在hbase中,主要存在两种类型的compaction:minor? compaction和major compaction。

????????? major compaction 的功能是将所有的store file合并成一个,触发major compaction的可能条件有:major_compact 命令、majorCompact() API、region server自动运行(相关参数:hbase.hregion.majoucompaction 默认为24 小时、hbase.hregion.majorcompaction.jetter 默认值为0.2 防止region server 在同一时间进行major compaction)。hbase.hregion.majorcompaction.jetter参数的作用是:对参数hbase.hregion.majoucompaction 规定的值起到浮动的作用,假如两个参数都为默认值24和0,2,那么major compact最终使用的数值为:19.2~28.8 这个范围。

???????? minor compaction的运行机制要复杂一些,它由一下几个参数共同决定:

?????????????????? hbase.hstore.compaction.min :默认值为 3,表示至少需要三个满足条件的store file时,minor compaction才会启动

?????????????????? hbase.hstore.compaction.max 默认值为10,表示一次minor compaction中最多选取10个store file

?????????????????? hbase.hstore.compaction.min.size 表示文件大小小于该值的store file 一定会加入到minor compaction的store file中

?????????????????? hbase.hstore.compaction.max.size 表示文件大小大于该值的store file 一定会被minor compaction排除

?????????????????? hbase.hstore.compaction.ratio 将store file 按照文件年龄排序(older to younger),minor compaction总是从older store file开始选择,如果该文件的size 小于它后面hbase.hstore.compaction.max 个store file size 之和乘以 该ratio,则该store file 也将加入到minor compaction 中。

??????? 如果对minor compaction过程还是不了解,可以去看hbase中关于minor compaction 的源码,或者: http://blog.csdn.net/macyang/article/details/6423078

作者:azhao_dn 发表于2013-4-29 16:05:52 原文链接

阅读:25 评论:0 查看评论

hbase权威指南: store file合并(compaction)

原文地址:hbase权威指南: store file合并(compaction), 感谢原作者分享。

kettle 连接 oracle 报错 oracle.i18n.text.converter.CharacterConverter.OGS.getInstance (I) Loracle/i18n/text...

kettle 连接 oracle 报错 oracle.i18n.text.converter.CharacterConverter.OGS.getInstance (I) Loracle/i18n/text...

问题背景 1:需要将一张 excel 中的数据导入到数据库中,并且还有关联转换和去重的处理问题,且此 excel 表不是固定的,需要写一个脚本

当新的 excel 拿来的时候,可以直接导入即可。所以我想用 kettle 做一个小脚本来完成。

 

问题背景 2:公司开发环境:jdk1.5       Oracle11g       kettle4.0   因为环境 jdk 的限制,所以我下了这个版本的 kettle

 

问题详述:

kettle4.0 连接 oracle 11g 报错 oracle.i18n.text.converter.CharacterConverter.OGS.getInstance (I) Loracle/i18n/text/converter/CharacterConverter

问题截图

解决方法及过程:

在网上搜了很多都没有解决,有关驱动的 ojdbc1.5.jar  还有 ojdbc.1.6 这些 jar 包也都配置了,但还是解决不了问题。

最后看到有一个 jar 包  orai18n.jar    把他放到 kettle4.0 的   \kettle\pdi-ce-4.0.0-stable\data-integration\libext   目录下重新启动,

就可以连接成功了。

 

总结与补充:

获取oracle  sid  的方式   sid_name 不是service_name
查询的sid_name的sql语句: select instance_name from v$instance;

关于Oracle CTE合并oracle合并数据的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于7、Oracle的;与ORA-00911: invalid character、dotConnect for Oracle怎么样进行OracleClient迁移?、hbase权威指南: store file合并(compaction)、kettle 连接 oracle 报错 oracle.i18n.text.converter.CharacterConverter.OGS.getInstance (I) Loracle/i18n/text...的相关知识,请在本站寻找。

本文标签: