设为首页 收藏本站
查看: 1523|回复: 0

[经验分享] 初用DB2 UDB V8.2(Stinger)制作CLR存储过程

[复制链接]

尚未签到

发表于 2016-11-18 04:17:49 | 显示全部楼层 |阅读模式
  因为工作的原因,基本上都是使用Oracle系列的数据库,很少有接触DB2的机会,可从9月17日开始就开始密切的注意IBM的DB2 UDB 8.2,因为让我有些不太愿意相信的事情发生了。
    使用DB2 UDB 8.2就可以写C#/VB.NET等基于.NET Framework的存储过程,无疑这给.NET程序员带来了更宽广的世界。还有就是微软的Sql Server还在Beta2,看样子至少从广告效果上DB2也给Sql Server一个小耳光吧。这样的小地方也都不愧是被称作Stinger。
    在IBM的主页上有这样两篇文章介绍相关的知识
    DB2 Development Add-In Technical Preview
    A look at the new functions in DB2 Universal Database V8.2
    通过它能有个大概的印象,趁着休息天就按照这两篇文章开始了尝鲜的“旅程“。
    ⒈下载DB2 UDB ( 我的OS为W2K,我下载的版本都是32Bit的)
        在9/17的随笔 DB2 UDB Ver 8.2 ( Stinger )中也有介绍,我们需要下载下面两个软件。
        
           ⑴ DB2 Personal Developers Edition for Windows
                  这也就是DB2 UDB 8.1.3,目前似乎以对该版本升级的形式提供,还没有直接提供8.2的下载。
                  需要注意的是如果没有注册过,下载前需要注册您的个人信息。
                  当打开下载页面后,选择DB2 Personal Edition V8.1 with FixPack 3 (32 Bit)。
           ⑵ V810 FixPak 7 for WINDOW 32-bit
                  DB2 UDB V8.2 ( Stinger ) 是按照FixPak 7提供的,选择DB2 Personal Edition下载即可。
    ⒉安装DB2 UDB
        按照下载顺序安装,具体安装说明可以参看帮助文件。
    ⒊安装VS.NET Add-in
        如果在安装DB2前已经安装了VS.NET 2003,那么就没有必要自行安装。如果之后安装了VS.NET 2003,那么只要在没有VS.NET运行的前提下执行Program Files\IBM\SQLLIB\DB2VSRGX.BAT批处理文件即可。
    ⒋制作DB2 Database Project
        打开VS.NET 2003生成新的项目文件,项目文件的种类为IBM独自追加的DB2 Database Project。生成后还需要设置IBM Explorer,只要和安装的DB2的某个数据库连接即可。
    ⒌添加DB2 Class Library
        添加新项目时候选择VC# Project中选择DB2 Class Library,这样会自动生成DB2Class1.cs文件。
        文件内容( 该文件由 IBM DB2 UDB 8.2 的 VS2003 Addin 自动生成 )



DSC0000.gif using System;
using IBM.Data.DB2;

namespace StudyDB2ClassLibrary1
DSC0001.gif DSC0002.gif DSC0003.gif {
DSC0004.gif DSC0005.gif     /**//// <summary>
DSC0006.gif     /// Summary description for DB2Class1.
    /// This class and method can be used as the basis for a DB2 CLR procedure.
    /// For more information on creating and deploying DB2 CLR procedures visit:
    ///    http://www.ibm.com/software/data/developer
    ///
DSC0007.gif     /// </summary>
    public class DB2Class1
    {
        public static void Procedure1(
            String        inParm1,
            ref String    inoutParm2,
            out String    outParm3)
        {
            // Create new command object from connection context
            DB2Command myCommand = DB2Context.GetCommand();

            // TODO: Insert your code here

            outParm3 = null;
            // myCommand.CommandText = "SELECT FIRSTNME, MIDINIT, LASTNAME FROM EMPLOYEE";
            // DB2DataReader myReader = myCommand.ExecuteReader();
            // myReader.Close();
        }
    }
DSC0008.gif }
     
     有一些小小的感动,因为就这样简单,用它就可以做存储过程了。
    ⒍添加存储过程
        
先在IBM Explorer的Procedures上右击鼠标,添加CLR存储过程,这里只要按照对话框的提示添加即可。然后用鼠标右击DB2 Database Project项目文件,选择Assemblies,这样会有对话框出来,选择好DB2 Class Library生成的DLL,然后点击安装按钮即可。
        如果想要测试,在IBM Explorer上右击添加的过程就可以选择执行,进行测试。
# 在操作中,有很多奇怪的问题,如参数无法使用NULL,CLR存储过程中无法Commit等,
# 我想这些只是我还没有完全理解好,如果有正式使用DB2开发的机会,那个时候再慢慢的摸索吧。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-301732-1-1.html 上篇帖子: DB2 HOW TOs 下篇帖子: DB2保存图片并读取动态显示图片
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表