0 0

function里面可以用update的案例原理是什么呢?5

create or replace function CreateMaxNo(cNoType in ldmaxno.notype%type,
                                       cNoLimit in ldmaxno.nolimit%type)
return integer is
pragma autonomous_transaction;
tMaxNo integer := 0;  
begin

   
update LDMaxNo set MaxNo = MaxNo+1 where NoType = cNoType and NoLimit = cNoLimit
Returning MaxNo Into tMaxNo; 
If(Sql%Notfound) then 
       Insert Into LDMaxNo (NOTYPE,NOLIMIT,MAXNO) values(cNoType,cNoLimit,1) ;
       tMaxNo := 1;
     End If ;
     commit;
  return(tMaxNo); 
end CreateMaxNo;

 

 

以上oracle版本fucntion可以正常运行,里面的update可以有效执行。

 

 

 

 

移植了一个SQLSERVER版本 是失败的,请大神帮忙分析原因

 create  function CreateMaxNo(@cNoType varchar(15),@cNoLimit varchar(20))
 returns int 
as
begin
declare @tMaxNo int
 set @tMaxNo= 0;
  update LDMaxNo set MaxNo = MaxNo+1 where NoType = @cNoType and NoLimit = @cNoLimit;
 set @tMaxNo= (select MaxNo from LDMaxNo where NoType = @cNoType and NoLimit = @cNoLimit );
   If @@RowCount<1 
   Insert Into LDMaxNo (NOTYPE,NOLIMIT,MAXNO) values(@cNoType,@cNoLimit,1) ;
   set @tMaxNo= 1;
return(@tMaxNo);
end

 

ps:不要说procedure,俺希望最好能用function实现

 

 

 

2015年1月05日 15:08
目前还没有答案

相关推荐

    悬浮数字的实现案例

    有时候新闻或者消息提示有几条,可以用absolute定位来实现效果。 原理是什么呢? 1.获取数字或者状态。 代码如下:function getnewscount(){ $time = date(“Y-m-d”,strtotime(“-3 day”)); $where[“News....

    Linq To Sql进阶系列.pdf

    6.1 用 object 的查询是什么 6.2 原理 6.3 反射在本方法中的作用 6.4 测试用例及反思 最后 Linq To Sql 进阶系列(七)动态查询续及 CLR 与 SQL 在某些细节上的差别 7.1 object 的动态查询续 7.2 限定字段在某集合中...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    varchar2 1~4000字节 可变长度字符串,与CHAR类型相比,使用VARCHAR2可以节省磁盘空间,但查询效率没有char类型高 数值类型 Number(m,n) m(1~38) n(-84~127) 可以存储正数、负数、零、定点数和精度为38位的浮点数...

    Spring中文帮助文档

    3.2. 基本原理 - 容器和bean 3.2.1. 容器 3.2.2. 实例化容器 3.2.3. 多种bean 3.2.4. 使用容器 3.3. 依赖 3.3.1. 注入依赖 3.3.2. 依赖配置详解 3.3.3. 使用depends-on 3.3.4. 延迟初始化bean 3.3.5. 自动...

    Spring.3.x企业应用开发实战(完整版).part2

    11.6.2 使用SqlUpdate更新数据 11.6.3 使用StoredProcedure执行存储过程 11.6.4 SqlFunction类 11.7 小结 第12章 整合其他ORM框架 12.1 Spring整合ORM技术 12.2 在Spring中使用Hibernate 12.2.1 配置SessionFactory ...

    Spring API

    3.2. 基本原理 - 容器和bean 3.2.1. 容器 3.2.2. 实例化容器 3.2.3. 多种bean 3.2.4. 使用容器 3.3. 依赖 3.3.1. 注入依赖 3.3.2. 依赖配置详解 3.3.3. 使用depends-on 3.3.4. 延迟初始化bean 3.3.5. 自动...

    Spring3.x企业应用开发实战(完整版) part1

    11.6.2 使用SqlUpdate更新数据 11.6.3 使用StoredProcedure执行存储过程 11.6.4 SqlFunction类 11.7 小结 第12章 整合其他ORM框架 12.1 Spring整合ORM技术 12.2 在Spring中使用Hibernate 12.2.1 配置SessionFactory ...

    MySQL 5.1参考手册 (中文版)

    12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 12.7.2. 全文搜索带查询扩展 12.7.3. 全文停止字 12.7.4. 全文限定条件 12.7.5. 微调MySQL全文搜索 12.8. Cast函数和操作符 12.9. 其他函数 ...

    mysql官方中文参考手册

    12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 12.7.2. 全文搜索带查询扩展 12.7.3. 全文停止字 12.7.4. 全文限定条件 12.7.5. 微调MySQL全文搜索 12.8. Cast函数和操作符 12.9. 其他函数 ...

    MYSQL中文手册

    12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 12.7.2. 全文搜索带查询扩展 12.7.3. 全文停止字 12.7.4. 全文限定条件 12.7.5. 微调MySQL全文搜索 12.8. Cast函数和操作符 12.9. 其他...

    MySQL 5.1参考手册中文版

    12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 12.7.2. 全文搜索带查询扩展 12.7.3. 全文停止字 12.7.4. 全文限定条件 12.7.5. 微调MySQL全文搜索 12.8. Cast函数和操作符 12.9. 其他...

    MySQL 5.1参考手册

    12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 12.7.2. 全文搜索带查询扩展 12.7.3. 全文停止字 12.7.4. 全文限定条件 12.7.5. 微调MySQL全文搜索 12.8. Cast函数和操作符 12.9. 其他函数 ...

    MySQL5.1参考手册官方简体中文版

    12.6. MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 12.7.2. 全文搜索带查询扩展 12.7.3. 全文停止字 12.7.4. 全文限定条件 12.7.5. 微调MySQL全文搜索 12.8. Cast函数和操作符 12.9. 其他函数 ...

    mysql5.1中文手册

    目录 &lt;br&gt;前言 1. 一般信息 1.1. 关于本手册 1.2. 本手册采用的惯例 1.3.... MySQL使用什么日历? 12.7. 全文搜索功能 12.7.1. 布尔全文搜索 12.7.2. 全文搜索带查询扩展 12.7...

    Java学习笔记-个人整理的

    {1.4.1.1}浮点数原理}{24}{subsubsection.1.4.1.1} {1.4.2}格式化输出浮点数}{24}{subsection.1.4.2} {1.4.3}\texttt {char}}{24}{subsection.1.4.3} {1.4.4}转义字符}{25}{subsection.1.4.4} {1.4.5}Boolean ...

Global site tag (gtag.js) - Google Analytics