电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

DB2 9(Viper)快速入門

瀏覽:238日期:2023-03-24 09:22:38
正在看的db2教程是:DB2 9(Viper)快速入門。

為了幫助您快速掌握 DB2 自身的 XML 特性,請完成幾個普通的任務,比如:

  1. 創建用于管理 XML 數據的數據庫對象,包括一個測試數據庫、一些示例表和視圖。
  2. 使用 INSERT 和 IMPORT 語句將 XML 數據填充到數據庫中。
  3. 驗證您的 XML 數據。使用 DB2 開發和注冊您的 XML 模式,并在導入數據時使用 XMLVALIDATE 選項。
后續文章將包括其他主題,比如使用 SQL 查詢、更新和刪除 DB2 XML 數據,使用 XQuery 查詢 DB2 XML 數據,開發存取 DB2 XML 數據的 Java 應用程序和 Web 組件。
創建數據庫對象

讓我們先來創建一個單獨的 DB2 Unicode 數據庫。在 DB2 Viper 中,只有 Unicode 數據庫才能同時存儲 XML 文檔和 SQL 數據的更多傳統格式,比如整數、日期/時間、變長字符串,等等。隨后,您將在這個數據庫中創建對象來管理 XML 和其他類型的數據。

創建測試數據庫

為了創建一個新的 DB2 Unicode “測試” 數據庫,打開 DB2 命令窗口,發出語句來指定 Unicode 編碼集合和支持的區域,如 清單 1:

清單 1. 創建用于存儲 XML 數據的數據庫



create database test using codeset UTF-8 territory us



一旦創建了 Unicode 數據庫,您就不需要發出任何專門的命令或采取任何進一步措施來使 DB2 能夠以它自身分層的格式存儲 XML 數據,因為您的 DB2 系統已經準備好了。

創建示例表

為了存儲 XML 數據,請創建包含一個或多個 XML 列的表。這些表充當文檔集合的邏輯容器;在幕后,DB2 實際上使用了不同的存儲方案來存儲 XML 和非 XML 數據。然而,使用表作為管理各種受支持的數據格式的邏輯對象,簡化了管理和應用程序開發問題,特別是當需要在一個單獨的查詢中集成不同的數據格式時。

您可以對 DB2 表進行定義,使其只包含 XML 列、只包含傳統 SQL 類型的列或者同時包含兩者。本文對后一種情況進行了建模。清單 2 中的例子連接到 “測試” 數據庫,并創建了兩個表。第一個是 “items” 表,追蹤關于貨物的銷售情況和顧客對貨物的評價信息。第二個表追蹤的是關于 “客戶” 的信息,包括關于聯系信息的數據。注意 “comments” 和 “contactinfo” 是基于新的 DB2 XML 數據類型,而所有其他的列都是基于傳統 SQL 數據類型的。

清單 2. 創建用于 XML 數據的表



connect to test;

create table items (

id int primary key not null,

brandname varchar(30),

itemname varchar(30),

sku int,

srp decimal(7,2),

comments xml

);

create table clients(

id int primary key not null,

name varchar(50),

status varchar(10),

contactinfo xml

);



如果您仔細地查看這些表定義例子,您將注意到 “comments” 和 “contactinfo” 列都沒有進行 XML 文檔內部結構的定義。這是 DB2 的一個重要特性。用戶不需要為了存儲數據而預定義一個 XML 數據結構(或者,更準確地說是一個 XML 模式)。事實上,DB2 可以在一個單獨的列中存儲任何格式良好的 XML 文檔,這意味著不同模式的 XML 文檔 —— 或沒有和任何注冊的模式關聯的文檔 —— 都可以存儲在相同的 DB2 列中。當我們討論如何在 DB2 中存儲數據時,本文將深入討論這個特性。

創建視圖

您可以隨意地在包含 XML 數據的表上創建視圖,就像您可以在只包含傳統 SQL 數據類型的表上創建視圖一樣。清單 3 中的例子創建具有 “Gold” 狀態的客戶的一個視圖:

清單 3. 創建一個包含 XML 數據的視圖



create view goldview as

select id, name, contactinfo

from clients where status="Gold";



關于索引的一點說明

最后,沒有必要在 XML 列上創建專門的索引來提高數據的查詢速度。因為這是一篇介紹性文章,而且示例數據很少,所以本文不會涵蓋到那個主題。然而,在生產環境中,定義一個適當的索引對實現最佳的性能來說很關鍵。查看本文結尾部分的 “參考資料”,以助于了解 DB2 的新索引技術。

存儲 XML 數據

創建好表之后,現在您就可以用數據填充它們了。您可以通過直接發出 SQL INSERT 語句來完成這項工作,或者通過調用 DB2 IMPORT 工具在后臺發出 INSERT 語句。

使用 INSERT 語句

使用 INSERT,您可以直接向 DB2 中填充原始的 XML 數據。如果您已經編寫了一個應用程序并在變量中存儲了 XML 數據,那么這可能是最容易的方法。但是如果您只是剛開始使用 DB2 Viper,并且不想編寫應用程序,那么您可以交互地發出 INSERT 語句(我發現使用 DB2 Command Editor 是很方便的,雖然您也可以使用命令行處理器,如果您更喜歡那么做的話)。

要使用 DB2 Command Editor,請啟動 DB2 Control Center。從頂端的下拉菜單 “Tools” 中選擇 Command Editor,將出現一個單獨的窗口,如 圖 1 所示。

圖 1. DB2 Command Editor



在上面的窗格中輸入下列語句:

清單 4. 交互地插入 XML 數據



connect to test;

insert into clients values (77, "John Smith", "Gold",

xmlparse(document "<addr>111 Main St., Dallas, TX, 00112</addr>"

preserve whitespace)

)



單擊左側的綠色箭頭來執行該命令。

注意,聯機提供 XML 數據(如 清單 4 所示)需要您調用 XMLPARSE 函數,以把文檔從字符值轉換成 XML 類型值。本例中的輸入文檔相當簡單 。如果文檔很大或者很復雜,把 XML 數據鍵入到像清單 4 所示的 INSERT 語句中是不切實際的。在大多數情況下,您使用主機變量或者參數標記編寫一個應用程序來插入數據。您將發現本文帶有一個簡要的 Java 代碼編寫例子。然而,由于這是一個介紹性的教程,所以我們不會詳細地討論應用程序開發主題。相反,我們將討論使用數據填充 DB2 XML 列的另一種選擇 —— 使用 IMPORT 工具。

使用 DB2 IMPORT

[1] [2] [3] 下一篇

標簽: DB2
相關文章:
主站蜘蛛池模板: 螺旋丝杆升降机-SWL蜗轮-滚珠丝杆升降机厂家-山东明泰传动机械有限公司 | 对辊破碎机-液压双辊式,强力双齿辊,四辊破碎机价格_巩义市金联机械设备生产厂家 | 400电话_400电话申请_866元/年_【400电话官方业务办理】-俏号网 3dmax渲染-效果图渲染-影视动画渲染-北京快渲科技有限公司 | 精密冲床,高速冲床等冲压设备生产商-常州晋志德压力机厂 | 不锈钢法兰-碳钢法兰-法兰盘生产加工厂家-[鼎捷峰]-不锈钢法兰-碳钢法兰-法兰盘生产加工厂家-[鼎捷峰] | 电脑刺绣_绣花厂家_绣花章仔_织唛厂家-[源欣刺绣]潮牌刺绣打版定制绣花加工厂家 | 上海道勤塑化有限公司 | 全自动在线分板机_铣刀式在线分板机_曲线分板机_PCB分板机-东莞市亿协自动化设备有限公司 | 道达尔润滑油-食品级润滑油-道达尔导热油-合成导热油,深圳道达尔代理商合-深圳浩方正大官网 | 桥架-槽式电缆桥架-镀锌桥架-托盘式桥架 - 上海亮族电缆桥架制造有限公司 | 电动卫生级调节阀,电动防爆球阀,电动软密封蝶阀,气动高压球阀,气动对夹蝶阀,气动V型调节球阀-上海川沪阀门有限公司 | 小型高低温循环试验箱-可程式高低温湿热交变试验箱-东莞市拓德环境测试设备有限公司 | SMC-SMC电磁阀-日本SMC气缸-SMC气动元件展示网 | 针焰试验仪,灼热丝试验仪,漏电起痕试验仪,水平垂直燃烧试验仪 - 苏州亚诺天下仪器有限公司 | 洛阳防爆合格证办理-洛阳防爆认证机构-洛阳申请国家防爆合格证-洛阳本安防爆认证代办-洛阳沪南抚防爆电气技术服务有限公司 | 合肥花魁情感婚姻咨询中心_挽回爱情_修复婚姻_恋爱指南 | 珠海白蚁防治_珠海灭鼠_珠海杀虫灭鼠_珠海灭蟑螂_珠海酒店消杀_珠海工厂杀虫灭鼠_立净虫控防治服务有限公司 | 密集架|电动密集架|移动密集架|黑龙江档案密集架-大量现货厂家销售 | 天津试验仪器-电液伺服万能材料试验机,恒温恒湿标准养护箱,水泥恒应力压力试验机-天津鑫高伟业科技有限公司 | 洗石机-移动滚筒式,振动,螺旋,洗矿机-青州冠诚重工机械有限公司 | 轴承振动测量仪电箱-轴承测振动仪器-测试仪厂家-杭州居易电气 | 薄壁轴承-等截面薄壁轴承生产厂家-洛阳薄壁精密轴承有限公司 | 锤式粉碎机,医药粉碎机,锥式粉碎机-无锡市迪麦森机械制造有限公司 | 中空玻璃生产线,玻璃加工设备,全自动封胶线,铝条折弯机,双组份打胶机,丁基胶/卧式/立式全自动涂布机,玻璃设备-山东昌盛数控设备有限公司 | LED太阳能中国结|发光红灯笼|灯杆造型灯|节日灯|太阳能灯笼|LED路灯杆装饰造型灯-北京中海轩光电 | 山东聚盛新型材料有限公司-纳米防腐隔热彩铝板和纳米防腐隔热板以及钛锡板、PVDF氟膜板供应商 | 多功能三相相位伏安表-变压器短路阻抗测试仪-上海妙定电气 | 电气控制系统集成商-PLC控制柜变频控制柜-非标自动化定制-电气控制柜成套-NIDEC CT变频器-威肯自动化控制 | Type-c防水母座|贴片母座|耳机接口|Type-c插座-深圳市步步精科技有限公司 | 硅胶制品-硅橡胶制品-东莞硅胶制品厂家-广东帝博科技有限公司 | CE认证_FCC认证_CCC认证_MFI认证_UN38.3认证-微测检测 CNAS实验室 | 高压油管,液压接头,液压附件-烟台市正诚液压附件 | 空压机网_《压缩机》杂志| 数字展示在线_数字展示行业门户网站 | 餐饮加盟网_特色餐饮加盟店_餐饮连锁店加盟 | 德州网站制作 - 网站建设设计 - seo排名优化 -「两山建站」 | 最新范文网_实用的精品范文美文网| 冷却塔减速机器_冷却塔皮带箱维修厂家_凉水塔风机电机更换-广东康明冷却塔厂家 | 120kv/2mA直流高压发生器-60kv/2mA-30kva/50kv工频耐压试验装置-旭明电工 | 数显水浴恒温振荡器-分液漏斗萃取振荡器-常州市凯航仪器有限公司 | 行星搅拌机,双行星搅拌机,动力混合机,无锡米克斯行星搅拌机生产厂家 |