• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Prayer

            在一般中尋求卓越
            posts - 1256, comments - 190, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            DB2聯合數據庫(Federated Database)配置實例

            Posted on 2008-12-22 10:20 Prayer 閱讀(956) 評論(0)  編輯 收藏 引用 所屬分類: DB2

            來源:mustbelove的專欄
            使用DB2聯合數據庫,您可以使用一條SQL語句查詢多個數據源中的數據。奇妙的是,這些數據源可以多種多樣:即可以是多種關系數據庫系統,也可以是非關系數據庫系統,比如Microsoft Excel、xml等。本文將首先探討多個關系數據庫之間的聯合訪問。

            我們不如先來動手配置一個簡單的聯合數據庫實例來培養一下您的成就感,這樣可以為您理解聯合數據庫所設計的概念及繁多的參數選項增加一點信心。我一向喜歡這種文章風格,我相信很多人也會喜歡的。

            要進行下面的試驗,您必須先安裝DB2 v8.2 ESE (Enterprise Server Edition) for Windows。DB2的安裝不是本文的討論范圍。

            假如您的DB2已經安裝好了,那就開始吧。

             

             

            1) 使用windows管理員權限的用戶登陸windows,筆者用的是Administrator。
            2) 為了完成下面的演示,您還需要另外一個windows用戶,筆者使用安裝DB2的時候自動創建的db2admin用戶。您當然也可以使用其他windows用戶。

            3) 確保您已經創建了至少一個可用的實例。筆者使用缺省創建的DB2實例。您可以通過在命令窗口運行DB2START命令來啟動這個實例
            4) 在DB2命令窗口運行DB2 GET DBM CFG 來查看當前實例的配置參數,并確保FEDERATED參數設置為YES,您可以通過運行DB2 UPDATE DBM CFG USING FEDERATED YES來設置這個參數。修改這個參數后,必須重新啟動實例才會生效(DB2STOP/DB2START)

            5) 卻保您已經創建了DB2樣本數據庫SAMPLE,如果您還沒有創建,可以通過在DB2命令行窗口運行db2sampl命令來創建它。此樣本數據庫包含了一些樣本表和數據,使用這個數據庫作演示可以使我們節省一點時間。
            6) 創建另外一個數據庫,筆者使用名字TESTDB:
            DB2 CREATE DB TESTDB

            7) 運行DB2CE命令打開DB2命令編輯器,并在這兒完成下面的步驟。

            8) 連接到sample數據庫,并創建DRDA包裝器(WRAPPER).
            CONNECT TO SAMPLE;
            CREATE WRAPPER DRDA;

            9) 創建服務器(SERVER)
            CREATE SERVER TESTDB TYPE DB2/UDB VERSION '8.2' WRAPPER "DRDA" AUTHID "db2admin" PASSWORD "db2admin" OPTIONS( ADD DBNAME 'TESTDB', PASSWORD 'Y');

            10) 創建用戶映射
            CREATE USER MAPPING FOR "ADMINISTRATOR" SERVER "TESTDB" OPTIONS ( ADD REMOTE_AUTHID 'db2admin', ADD REMOTE_PASSWORD 'db2admin') ;

            11) 使用db2admin用戶連接到TESTDB數據庫、創建表WORKITEM、并插入樣本數據。

            CONNECT TO TESTDB USER db2admin USING db2admin;

            CREATE TABLE WORKITEM (
            ITEMNO CHAR(4) NOT NULL,
            ITEMNAME VARCHAR(50) NOT NULL,
            EMPNO CHAR(6),
            PRIMARY KEY (ITEMNO)
            );

            INSERT INTO WORKITEM(ITEMNO,ITEMNAME,EMPNO) VALUES ('0001','測試程序模塊1','000010');
            INSERT INTO WORKITEM(ITEMNO,ITEMNAME,EMPNO) VALUES ('0002','完成模塊2的開發','000020');
            INSERT INTO WORKITEM(ITEMNO,ITEMNAME,EMPNO) VALUES ('0003','聯系客戶A','000030');

            12) 連接到SAMPLE數據庫,并為TESTDB數據庫中的WORKITEM表創建昵稱:
            CONNECT TO SAMPLE;
            CREATE NICKNAME ADMINISTRATOR.WORKITEM FOR TESTDB.DB2ADMIN.WORKITEM;

            13) OK,現在我們就可以在SAMPLE數據庫中使用TESTDB數據庫中的WORKITEM表了,而且還可以和SAMPLE數據庫的EMPLOYEE表聯合查詢:
            SELECT * FROM WORKITEM;
            我們來查詢由誰來負責哪個工作項目:
            SELECT A.ITEMNO,A.ITEMNAME,A.EMPNO,B.FIRSTNME,B.LASTNAME FROM WORKITEM A LEFT OUTER JOIN EMPLOYEE B ON A.EMPNO=B.EMPNO;

            到此為止,SAMPLE數據庫就已經變成了聯合數據庫,您通過在SAMPLE數據庫中為TESTDB數據庫中的表或視圖創建昵稱來訪問他們,很好玩吧。:)

            思思久久99热只有频精品66| 久久午夜电影网| 日韩欧美亚洲综合久久 | 国产A三级久久精品| 久久精品人成免费| 久久久久亚洲爆乳少妇无| 久久精品国产清自在天天线 | 草草久久久无码国产专区| 久久婷婷色综合一区二区| 人妻无码αv中文字幕久久琪琪布| 国产69精品久久久久99| 国内精品人妻无码久久久影院导航 | 99久久精品国产一区二区 | 欧洲精品久久久av无码电影| 成人国内精品久久久久影院VR| 久久精品国产亚洲av麻豆图片| 久久婷婷综合中文字幕| 色欲av伊人久久大香线蕉影院| 久久久久香蕉视频| 色综合色天天久久婷婷基地| 无码专区久久综合久中文字幕| 人妻无码精品久久亚瑟影视| 亚洲国产精品久久久久网站| 国产亚洲精久久久久久无码77777| 久久九九久精品国产免费直播| 国产精品久久久久久影院 | 久久亚洲精品中文字幕三区| 99re久久精品国产首页2020| 亚洲国产另类久久久精品小说 | 精品国产日韩久久亚洲| 久久久精品日本一区二区三区| 国产精品久久久久9999| 久久丫精品国产亚洲av不卡| 亚洲精品白浆高清久久久久久 | 久久久久久久久久久久中文字幕 | 久久久久久综合一区中文字幕| 久久精品无码一区二区无码| 久久国产精品成人片免费| 久久青青草原精品国产| 精品久久久久中文字幕日本| 国产精品久久影院|