当前位置:七道奇文章资讯数据防范Oracle防范
日期:2011-01-25 22:55:00  来源:本站整理

<b>利用DB2必须理解的几个知识点-入门底子</b>[Oracle防范]

赞助商链接



  本文“<b>利用DB2必须理解的几个知识点-入门底子</b>[Oracle防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

1.在安装DB2数据库后,你可以通过号令行方法或图形界面方法来操作,假定你的数据库服务端不在本机,则需求在“客户机配置帮助程序”中做一个客户端衔接的配置.

2.掌握中央中无法增删改数据,只能编写sql语句来实现而quest供应的工具固然能增添数据,但竟然无法用复制、粘贴和Tab键,必须一一输入,然后用鼠标点击切换现存数据看来可以在单元格中编辑改正,但实际却无法commit,呵呵,还是老诚恳实写update语句,至于删除数据,更是非写delete语句不可.不过可以用pb以单元格方法编辑数据,呼应的一个缺陷是编辑数据的按钮和删除表的按钮太近,万一点错了删除表的按钮,pb但是不作提醒就把表给删了的,faint

3.DB2的视图里不能直接用order by语句,必须这样写:

 

select × from(select a,b,c from table1 order by a)as tab

 

注释:这种写法的前提是你已经打过补钉了

4.存储历程的问题:

DB2供应ltrim函数和rtrim函数,但恰好不供应trim函数,假如你但愿去除字符两头的空格,对不起,必须用ltrim(rtrim())的方法调用insert 语句里面竟然不能用表达式赋值,必须把值先赋给一个变量调用其他存储历程时竟然不能用常量做参数,必须把这个常量的值赋给一个变量,再以这个变量为参数

 

select * from table fetch first n rows only 语句竟然在存储历程里不可用

 

5.存储历程里可以利用动态sql,但函数里却不可以利用,kao

6. 碰到commit或rollback时自动关闭游标,所以需求慎重利用单独提交.

proc builder老是在调试中内存不足,屏幕花掉.而假如断点调试时暂停不举行下去的时间略微长一点就会提醒超时,受不了.

7.开发问题:

在利用 日期变量+1 MONTHS OR 日期变量-1 MONTHS 的方法取日期时,比方日期变量值为 2004-02-29时,存储历程里将日期变量+1 MONTHS 赋值给另一

日期变量时会出错.呼应SQLSTATE为01506(db2 ? 01506): 对 DATE 或TIMESTAMP值举行了调整,以校正算术运算得出的无效日期.

假如要获得的只是下一月份,可采取的替换办法是获得当前日期所在月份的第一天作为基准后+1 MONTHS OR -1 MONTHS

8.对变量的赋值不能用select ……into ……方法而要用set v=(select ……)的方法,

具体的示比方下:

 

  以上是“<b>利用DB2必须理解的几个知识点-入门底子</b>[Oracle防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • drop function SXFM.ISORDERSUBMITDATE;

    CREATE FUNCTION SXFM.ISORDERSUBMITDATE(IN_ROW_ID DECIMAL(16,0))
    RETURNS DATE
    LANGUAGE SQL
    BEGIN ATOMIC DECLARE V_SUBMIT_DATE DATE;
    DECLARE V_SELL_ID DECIMAL(16, 0);
    DECLARE V_BUY_ID
    DECIMAL(16, 0);
    set V_SELL_ID = (SELECT COALESCE(RECEIVE_ID,-1) FROM IS_ORDER WHERE ROW_ID=IN_ROW_ID);
    set V_BUY_ID = (SELECT COALESCE(PAY_ID,-1) FROM IS_ORDER WHERE ROW_ID=IN_ROW_ID);
    set V_SUBMIT_DATE = (SELECT DATE(MAX(A.SUBMIT_DATE)) FROM AM_AUDIT_QUEUE A,SM_US
    ER B,SM_USER C
    WHERE A.TABLE_CODE=’IS_ORDER’
    AND A.TABLE_ROW_ID=IN_ROW_ID
    AND A.AUDIT_EMP_ID=C.ROW_ID AND C.BRANCH_ID=V_BUY_ID --考核方为付款方
    AND A.SUBMIT_EMP_ID=B.ROW_ID AND B.BRANCH_ID=V_SELL_ID); --提交方为收款方
    RETURN V_SUBMIT_DATE;
    END;
    #SYNC 10;
    本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .