我们今天主要向大家描述的是DB2数据库在实际操作过程中我们大家必须要了解的N个知识点,学习使用DB2包括今后对DB2数据库的维护,有许多知识需要学习。那么本文为大家提供几个必须了解的知识点,相信这是今后工作中必定会用到。
成都创新互联公司成立以来不断整合自身及行业资源、不断突破观念以使企业策略得到完善和成熟,建立了一套“以技术为基点,以客户需求中心、市场为导向”的快速反应体系。对公司的主营项目,如中高端企业网站企划 / 设计、行业 / 企业门户设计推广、行业门户平台运营、app软件定制开发、移动网站建设、微信网站制作、软件开发、绵阳服务器托管等实行标准化操作,让客户可以直观的预知到从成都创新互联公司可以获得的服务效果。
使用IBM DB2数据库时必须了解的几个知识点:
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 ……)的方式,
具体的示例如下:
- 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;
以上的相关内容就是对使用DB2数据库必须了解的几个知识点的介绍,望你能有所收获。
【编辑推荐】
网站题目:在使用DB2数据库时你要了解的知识点有哪些?
文章地址:http://www.shufengxianlan.com/qtweb/news6/224956.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联