oracle和mysql的sql写法区别

oracle和mysql的sql写法区别

批量插入

mybatis映射中可以通过标签来实现Oracle的批量插入、更新和删除
标签中主要有以下属性:
collection、item、index、open、separate、close
collection:该属性必须指定,指代Dao层接口传递的数据类型,主要有三种:
①:list集合类型;collection=”list“
②:array数组类型;collection=”array“
③:map映射类型;collection=”map“
item:别名,表示集合中每一个元素迭代时的别名,获取数据时必须指定用别名来指定,不然会报错。
index:迭代下标,即迭代过程中的位置。
open:表示语句以什么开始。
separate:表示每次迭代之间以什么符号作为分割。
close:表示语句以什么结束。

oracle 
第一种

	    insert into DP077 (
	    reason,begym,endym,freeuse1,dpbusitype) 
	    SELECT t.*
                 from(
	      
	       select 
		     #{item.reason,jdbcType=VARCHAR},
		      #{item.begym,jdbcType=VARCHAR}, 
		      #{item.endym,jdbcType=DECIMAL},
		      #{item.freeuse1,jdbcType=DECIMAL},
		      '10' 
	          FROM dual  
	      
	       ) t  

第二种

	    insert  all 
	      
 	      into DP077 ( reason,begym,endym,freeuse1,dpbusitype) 
      values(
		     #{item.reason,jdbcType=VARCHAR},
		      #{item.begym,jdbcType=VARCHAR}, 
		      #{item.endym,jdbcType=DECIMAL},
		      #{item.freeuse1,jdbcType=DECIMAL},
		      '10' 
		      )
	      
	select  1   from   dual  ;

mysql 

	    insert into DP077 (
	    reason,begym,endym,freeuse1,dpbusitype) 
	    values
	      
		    ( #{item.reason,jdbcType=VARCHAR},
		      #{item.begym,jdbcType=VARCHAR}, 
		      #{item.endym,jdbcType=DECIMAL},
		      #{item.freeuse1,jdbcType=DECIMAL},
		      '10' )
	      
  	
  • 持续跟新中…

作者:pony_hjc
来源:CSDN
原文:https://blog.csdn.net/qq_41513129/article/details/89323046
版权声明:本文为博主原创文章,转载请附上博文链接!

你可能感兴趣的:(oralce和mysql的不同)