目前公司erp开发有一个脚本需求:对于收款合同审批单和收款合同(n:1),需要获取收款审批单中最新的一条审批记录来更新其对应的收款合同的相关信息. 难点主要在对相同类别的属性进行分组然后组内排序(分组排序加序号),这类问题大致的思路,对于同类别的进行分组,组内排序标号来获取最新一条的数据,有点类似Oracle的分析函数功能. 由于mysql没有实现分析函数功能,在查询网上许多帖子也都是互相复制的也没有说清楚,根据我所遇到等坑,在此记录,分享给大家,希望能对大家有所帮助. 审批单的表结构大致如下:…
不同的数据库,相应的字符串拼接方式不同,通过对比加深一下记忆. 一.MySQL字符串拼接 1.CONCAT函数 语法格式:CONCAT(char c1, char c2, ..., char cn) ,其中char代表字符串,定长与不定长均可以 1.1)连接两个字符串 1.2)连接多个字符串 2."+"操作符 2.1)连接两个字符串 2.2)连接多个字符串 3.假如其中一个字段为NULL,则用结果用空格代替NULL. 二.Oracle字符串拼接 1.CONCAT函数 语法格式:CONC…
Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决 I. 概述 1.1 JDBC概念 JDBC(Java Database Connectivity)是Java语言为了支持SQL功能而提供的与数据库连接的用户的接口,JDBC中包括了一组由(Java)语言书写的接口和类,它们都是独立于特定的DBMS,或者说他们可以和各种数据库相关联. 1.2 JDBC用途 JDBC由一组Java语言编写的类和接口组成,使用内嵌式的SQL,主要实现三方面功能:建立…
简述 InstallShield已经内建了对MySQL和Oracle的支持.但是这个功能是通过ODBC实现的,它对SQL脚本的格式要求非常严格,因此已经通过官方客户端测试的脚本在IS中执行时往往就会报错. 一般来说,数据库脚本只保证通过官方客户端测试即可,同时维护一份供IS执行的脚本费时费力.因此,考虑安装程序对两数据库的支持通过官方客户端实现. MySQL   function InstallMySQLComponent(szComponent) NUMBER nResult; STRING…
  oracle 分析函数over 分析函数(OVER) 目录: =============================================== 1.Oracle分析函数简介 2. Oracle分析函数简单实例 3.分析函数OVER解析 一.Oracle分析函数简介: 在日常的生产环境中,我们接触得比较多的是OLTP系统(即Online Transaction Process),这些系统的特点是具备实时要求,或者至少说对响应的时间多长有一定的要求:其次这些系统的业务逻辑一般比较复…
Mysql与Oracle区别 1. Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Oracle价格非常高. 2. Oracle支持大并发,大访问量,是OLTP最好的工具. 3. 安装所用的空间差别也是很大的,Mysql安装完后才152M而Oracle有3G左右,且使用的时候Oracle占用特别大的内存空间和其他机器性能. 4.Oracle也Mysql操作上的区别 ①主键 Mysql一般使用自动增长类型,在创建…
1.Oracle.MySQL插入时返回下一个主键的操作 Oracle:<insert id="insert" parameterClass="ROLE"><selectKey keyProperty="id" resultClass="java.lang.Long" type="pre">  SELECT SEQ_ROLE.NEXTVAL AS ID FROM DUAL</se…
存储过程&Function 编号 类别 ORACLE MYSQL 注释 1 创建存储过程语句不同 create or replace procedure P_ADD_FAC(   id_fac_cd  IN ES_FAC_UNIT.FAC_CD%TYPE) is DROP PROCEDURE IF EXISTS `SD_USER_P_ADD_USR`;create procedure P_ADD_FAC(       id_fac_cd  varchar(100)) 1.在创建存储过程时如果存在…
函数 编号 类别 ORACLE MYSQL 注释 1 数字函数 round(1.23456,4) round(1.23456,4) 一样:ORACLE:select round(1.23456,4) value from dualMYSQL:select round(1.23456,4) value 2 abs(-1) abs(-1) 功能: 将当前数据取绝对值用法: oracle和mysql用法一样mysql: select abs(-1) valueoracle: select abs(-1…
启动\关闭Oracle数据库的多种方法 启动和关闭oracle有很多种方法. 这里只给出3种方法: l         Sql*plus l         OEM控制台 l         Windows 控制台 1.以sql*plus为例: a.准备 首先我们用sql*plus来连接到Oracle Sqlplus /nolog 是以不连接数据库的方式启动sql*plus Connect /as sysdba 是以DBA身份连接到oracle b.启动 启动还是比较简单的 Startup就OK…