使用DB2数据库时哪些知识点是必须记住的?

数据库
以下的文章主要是浅谈正确使用DB2数据库时我们一定要牢记的几个知识点,以及对其在实际操作中要用到的语句的介绍。

以下的文章主要描述的是正确使用DB2数据库时,我们一定要牢记的几个知识点,学习使用DB2数据库包括今后维护DB2数据库,其中有许多的知识需要我们大家学习。那么本文为大家提供几个必须了解的知识点,相信这是今后工作中必定会用到。

 

使用IBM DB2数据库时必须了解的几个知识点:

 

1.在安装DB2数据库后,你可以通过命令行方式或图形界面方式来操作,假如你的数据库服务端不在本机,则需要在“客户机配置辅助程序”中做一个客户端连接的配置。

2.控制中心中无法增删改数据,只能编写sql语句来实现而quest提供的工具虽然能增加数据,但居然无法用复制、粘贴和Tab键,必须逐个输入,然后用鼠标点击切换现存数据看来可以在单元格中编辑修改,但实际却无法commit,呵呵,还是老老实实写update语句,至于删除数据,更是非写delete语句不可。

不过可以用pb以单元格方式编辑数据,相应的一个缺点是编辑数据的按钮和删除表的按钮太近,万一点错了删除表的按钮,pb可是不作提示就把表给删了的,faint

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

 

  1. 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,但函数里却不可以使用DB2数据库,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 ……)的方式,

具体的示例如下:

 

  1. drop function SXFM.ISORDERSUBMITDATE;   
  2. CREATE FUNCTION SXFM.ISORDERSUBMITDATE(IN_ROW_ID DECIMAL(16,0))   
  3. RETURNS DATE   
  4. LANGUAGE SQL   
  5. BEGIN ATOMIC DECLARE V_SUBMIT_DATE DATE;   
  6. DECLARE V_SELL_ID DECIMAL(16, 0);   
  7. DECLARE V_BUY_ID   
  8. DECIMAL(16, 0);   
  9. set V_SELL_ID = (SELECT COALESCE(RECEIVE_ID,-1) FROM IS_ORDER WHERE ROW_ID=IN_ROW_ID);   
  10. set V_BUY_ID = (SELECT COALESCE(PAY_ID,-1) FROM IS_ORDER WHERE ROW_ID=IN_ROW_ID);   
  11. set V_SUBMIT_DATE = (SELECT DATE(MAX(A.SUBMIT_DATE)) FROM AM_AUDIT_QUEUE A,SM_US   
  12. ER B,SM_USER C   
  13. WHERE A.TABLE_CODE=’IS_ORDER’   
  14. AND A.TABLE_ROW_ID=IN_ROW_ID   
  15. 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);  

 

提交方为收款方

 

 

  1. RETURN V_SUBMIT_DATE;   
  2. END;   
  3. #SYNC 10; 

 

 

上述的相关内容就是对使用DB2数据库的描述,希望会给你带来一些帮助在此方面。

【编辑推荐】

  1. 快速掌握DB2数据移动的操作技巧
  2. DB2建立database Partition的点滴
  3. DB2数据库备份成功与否的正确验证方式描述
  4. DB2数据库所支持的外部文件格式与制格式的文件
  5. DB2数据库所支持的外部文件格式与ASCII文件
     
责任编辑:佚名 来源: blueidea.com
相关推荐

2010-07-30 15:37:53

使用DB2

2010-07-29 11:31:53

使用DB2

2010-08-09 11:29:32

DB2数据库

2009-04-01 11:39:39

视图DB2

2010-08-06 10:51:16

使用IBM DB2

2010-07-29 09:44:35

DB2数据库优化

2010-08-10 09:07:51

DB2数据库优化

2010-08-09 13:08:45

DB2数据库

2010-08-16 13:25:41

DB2数据库操作

2010-08-16 08:59:31

IBM DB2

2010-08-13 15:26:14

IBM DB2

2010-08-05 15:27:00

使用DB2临时表

2011-03-11 16:02:03

DB2数据库安装

2010-07-29 09:52:04

DB2数据导入

2010-07-30 10:05:51

DB2数据库性能

2010-08-02 11:33:17

IBM DB2

2010-08-02 08:56:00

DB2数据库临时表

2011-08-23 09:23:35

DB2OLAP函数OLTP

2010-08-06 09:25:19

重定向恢复DB2

2010-08-31 14:24:25

DB2联合数据库
点赞
收藏

51CTO技术栈公众号