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....

    simulink s函数 恒润科技

    S-Function可以使用多种编程语言来实现,如MATLAB脚本语言、C/C++、Ada或Fortran等。这些自定义的函数能够定义复杂的行为并被集成到Simulink模型中作为定制化的模块使用。 #### 为何使用S-Function S-Function提供...

    人工鱼群算法matlab案例

    人工鱼群算法是一种模拟自然界鱼类群体行为的优化算法,它借鉴了鱼群在觅食、避险等活动中体现出的集体智慧。...在这个案例中,通过学习和实践,你可以掌握如何运用人工鱼群算法解决实际的优化问题。

    matlab退火算法案例

    理解并掌握MATLAB中的退火算法案例,不仅可以提高解决实际问题的能力,还能深入理解全局优化算法的工作原理。通过实践,你可以对退火算法有更直观的认识,并学会如何将其应用于其他领域的问题求解。

    matlab_SIMULINK仿真模块 EKF算法扩展卡尔曼滤波 有仿真模块有对应s函数模块算法

    这些资源对于理解和应用扩展卡尔曼滤波(Extended Kalman Filter, EKF)在实际问题中的工作原理非常有价值。 扩展卡尔曼滤波是经典卡尔曼滤波的扩展,适用于非线性系统的状态估计。在许多工程领域,如自动驾驶、...

    WebGL/ThreeJS 相机控件OrbitControls.js和性能控件/stats.min.js 使用案例

    WebGL是一种基于OpenGL标准的JavaScript API,用于在任何兼容的Web浏览器中进行2D和3D图形渲染,无需插件。ThreeJS是WebGL的一个强大库,它为...理解这些组件的工作原理和使用方式对于开发高质量的WebGL应用至关重要。

    swiper tabs 标签效果

    另外,可以利用Swiper的API方法,如`update`和`reLoop`来动态调整布局或重新初始化Swiper。 总结,Swiper通过其强大的功能和灵活性,可以轻松实现tabs标签页的切换效果。通过理解Swiper的基本原理和API,开发者可以...

    Unity3D自带例子AngryBots的分析

    AutoFire.js function Update () if (firing) { if (Time.time &gt; lastFireTime + 1 / frequency) { var go : GameObject = Spawner.Spawn (bulletPrefab, spawnPoint.position, spawnPoint.rotation); } 通过研究 ...

    matlab实现Kmeans聚类算法.zip_Kmeans_Kmeans聚类算法_audiencem77_kmeans聚类mat

    在MATLAB中,可以使用内置函数`kmeans`来实现K-means聚类。以下是一个基本的代码示例: ```matlab % 假设X为n×d矩阵,包含n个d维数据点 X = ...; % 数据点矩阵 K = 3; % 聚类数目 [idx, C] = kmeans(X, K); % idx...

    HTML5背景云朵飘飘的效果

    在这个案例中,"webgl-clouds(firefox)"可能是指使用WebGL技术实现的云朵飘动效果。WebGL是一种基于OpenGL标准的JavaScript API,允许在浏览器中进行硬件加速的3D图形渲染。如果使用WebGL,我们可以创建3D云朵模型,...

    高级的JS技巧

    Observer.prototype.update = function() { console.log(this.name + ' received the update'); }; var subject = new Subject(); var observer1 = new Observer('Observer 1'); var observer2 = new ...

    orical教程

    3. **SQL语法**:掌握DML(数据操纵语言),包括INSERT、UPDATE、DELETE操作;了解DDL(数据定义语言),用于创建、修改和删除数据库对象如表、视图、索引等;理解DCL(数据控制语言)用于权限管理,如GRANT和REVOKE...

    基于Html5 Canvas绘制逼真的闪电动画特效源码.zip

    通过理解Canvas的基本操作、动画原理以及粒子系统的概念,我们可以创造出极具吸引力的交互体验。在这个案例中,我们学习了如何利用Canvas绘制逼真的闪电动画,这只是一个起点,更多的创意和技巧等待着开发者们去探索...

    Linq To Sql进阶系列.pdf

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

    ajax用法文档

    function updateCart(responseText) { // 更新购物车UI console.log("更新购物车:" + responseText); } ``` #### 六、实际应用案例 以一个简单的添加商品到购物车功能为例,当用户点击“加入购物车”按钮时,...

    Canvas烟火效果

    - 为了提高性能,可以使用`shouldComponentUpdate`或者类似的逻辑判断是否需要真正更新和重绘每个粒子,避免不必要的计算。 - 使用Web Workers处理复杂的计算,将CPU密集型任务移到后台线程,防止阻塞主线程。 综...

    基于Fedora func的Linux服务器集群管理

    - **远程执行命令**:Func支持运行任意的shell命令,如`sudo apt-get update`或`service nginx restart`,可以批量应用到多台服务器。 - **文件分发**:Func可以将文件或目录从控制机推送到远程服务器,或者从...

    html5 canvas技术实现飞机大战小游戏

    例如,使用`addEventListener('keydown', function(event) {...})`监听按键事件,然后根据按键的键值改变飞机的运动方向。 "canvas案例"标签表明这个项目是一个实际应用的例子,开发者可以通过研究这个源码学习如何...

    javascrip调webservice

    ### JavaScript 调用 WebService 的方法与原理 在现代Web开发中,客户端与服务器端之间的通信至关重要。其中,一种常见的交互方式就是通过JavaScript来调用WebService服务。本篇文章将详细解析如何使用JavaScript来...

Global site tag (gtag.js) - Google Analytics