<form id="itnzz"><noscript id="itnzz"></noscript></form>

          1. <menuitem id="itnzz"></menuitem>
          2. 成人午夜激情在线观看,国产精品一线天粉嫩av,99精品国产综合久久久久五月天 ,一卡2卡三卡4卡免费网站,国产高清在线男人的天堂,五月天国产成人AV免费观看,67194熟妇在线观看线路,成人无码潮喷在线观看
            現在位置:范文先生網>理工論文>計算機信息技術>如何用VB存取SQL Server中的圖像數據

            如何用VB存取SQL Server中的圖像數據

            時間:2022-12-05 13:45:23 計算機信息技術 我要投稿
            • 相關推薦

            如何用VB存取SQL Server中的圖像數據

            如何用VB存取SQL Server中的圖像數據

            何益斌 高景昌 李小琳

            吉林大學130026

             

            摘要

              
            本文介紹MIS SQL Server對圖像數據的存儲機制和存取方法。針對VB開發工具,介紹了一種通過ADO Field 對象的GetChunk 方法和AppendChunk 方法來存取MIS SQL Server中的圖像數據的方法。

            關鍵詞

               ADO Field
            對象  BLOB  對象 GetChunkAppendChunk 方法   image數據類型   醫院信息系統

             MIS SQL Server  

             

                      在一個完善的醫院信息MIS中,圖像數據的存取是必不可少的,比如X光片、CT像片的保存。一方面,這些圖像數據在遠程診療為準確診斷病情提供了重要的依據,另一方面,也為快速查閱病人資料提供了基本條件。圖像數據的存取在其它應用系統如GIS中也有廣泛的應用。

            1、   SQL Server中圖像數據的存儲機制

                 在MIS SQL Server 中,對于小于 8000 個字節的圖像數據可以用二進制型(binary、varbinary)來表示。但通常要保存的一些醫學影像圖片都會大于 8000個字節。SQL Server提供了一種機制,能存儲每行大到 2G的二進制對象(BLOB),這類對象可包括image、text和ntext三種數據類型。Image數據類型存儲的是二進制數據,最大長度是 231-1 (2,147,483,647)個字節[2][3]。

            BLOB數據在MIS SQL Server系統中的存儲方式不同于普通的數據類型,對于普通類型的數據系統直接在用戶定義的字段上存儲數據值,而對于BLOB類型數據,系統開辟新的存儲頁面來存放這些數據,表中BLOB類型數據字段存放的僅是一個16個字節的指針,該指針指向存放該條記錄的BLOB數據的頁面。

            2、 SQL Server中圖像數據的存取

            MIS SQL Server中,當數據小于 8000 個字節時,可以用普通的SQL操縱語句(SELECT、INSERT、UPDATE、DELETE)來完成對字段的操縱,當數據大于8000個字節時,SQL提供了 WRITETEXT 、READTEXT和UPDATETEXT這三個函數來讀取和修改數據。這三個函數的使用方法為:

            (1) WRITETEXT {table.column text_ptr}[WITH LOG] {data}

            table.column為表中的字段,text_ptr為一個16個字節的指針,data為要寫的數據值?

            選參數WITH LOG表示是否要寫入日志文件中。

            : DECLARE @ptrval     binary(16)  --指針

                SELECT @ptrval = TEXTPTR(img_ct) FROM zy_ct WHERE id_ct = 20010101001

                WRITETEXT zy_ct.img_ct @ptrval 0x024324142342134214213421421454353452341

            (2) READTEXT {table.column text_ptr offset size} [HOLDLOCK]

            table.column為表中的字段,text_ptr為一個16個字節的指針,offset 為偏移量,即從

            第幾個字節開始讀數據,size為要讀的字節數,HOLDLOCK 為在讀數據中是否充許其他用戶

            修改該數據。

            例:DECLARE @ptrval varbinary(16)

                SELECT @ptrval = TEXTPTR(img_ct) FROM zy_ct WHERE id_ct = 20010101001

                READTEXT zy_ct.img_ct @ptrval 1 25

            (3) UPDATETEXT {table_name.dest_column_name dest_text_ptr}{NULL|insert_offset}

            { NULL | delete_length}[WITH LOG][ inserted_data| {table_name.src_column_name src_text_ptr}]

            table_name.dest_column_name 為要修改的text, ntext, 或 image字段;

            dest_text_ptr為指向其的指針;insert_offset為偏移量,對于text和image為從

            第幾開始字節開始寫,對于ntext為從第幾個字符(雙字節)開始寫;delete_length

            為從insert_offset開始刪除delete_length長度的字節(符),為0時不刪除,為NULL時

            為刪除從insert_offset開始到結束的所有數據。要插入的數據為 inserted_data為,也可

            是表table_name的src_column_name字段中指針 src_text_ptr所指數據。

            : DECLARE @ptrval binary(16)

                SELECT @ptrval = TEXTPTR(img_ct) FROM zy_ct WHERE id_ct = 20010101001

                UPDATETEXT zy_ct.img_ct @ptrval 16 0x54345

            可以看出,這三個函數的使用比較復雜,雖然可以通過生成存貯過程來調用執行,但有一個缺陷是在讀取數據時,READTEXT函數讀取的數據無法直接傳遞回前端應用程序。

            www.ycxgx.cn收集整理

            3、 VB 6.0中圖像數據的存取

            VB 6.0 的ADO Field 對象提供了GetChunk 方法和AppendChunk 方法來存取BLOB數據[1],這兩個函數實質是通過API調用WRITETEXT 、READTEXT和UPDATETEXT這三個函數,簡化了調用的方法。

            1)GetChunk 和AppendChunk方法介紹

            GetChunk 方法檢索其部分或全部長二進制或字符數據[4]。GetChunk 調用返回的數據將賦給“變量”。如果 Size 大于剩余的數據,則 GetChunk 僅返回剩余的數據而無需用空白填充“變量”。如果字段為空,則 GetChunk 方法返回 Null。每個后續的 GetChunk 調用將檢索從前一次 GetChunk 調用停止處開始的數據。但是,如果從一個字段檢索數據然后在當前記錄中設置或讀取另一個字段的值,ADO 將認為已從第一個字段中檢索出數據。如果在第一個字段上再次調用 GetChunk 方法,ADO 將把調用解釋為新的 GetChunk 操作并從記錄的起始處開始讀取。Field 對象的第一個 AppendChunk 調用將數據寫入字段,覆蓋所有現有的數據,隨后的 AppendChunk 調用則添加到現有數據。

            由于系統資源總是有限的,如果一次讀(存)取大量數據,可能會引起服務器、客戶機死機或是服務器的性能大大下降,因此使用這兩個函數時,要將圖像數據進行分段讀寫。

            (2)程序實現

            程序一:寫數據函數

            Public Function AppendBlobFromFile(blobColumn As ADODB.Field, ByVal FileName) As Boolean

            Dim FileNumber     As Integer     '文件號

                       Dim DataLen             As Long            '文件長度

            Dim Chunks               As Long            '

            【如何用VB存取SQL Server中的圖像數據】相關文章:

            SQL Server數據庫教學方法探索05-30

            開發基于SQL SERVER 的C/S數據庫應用系統?08-06

            Foxpro DBF數據庫轉換成SQL Server 6.5表的幾種方法08-06

            SQL Server的七個問題及其解決辦法04-22

            sql數據查詢實驗心得09-04

            ASP開發Browse/Server模式的Web數據庫08-06

            sql數據庫備份和恢復常用操作08-12

            基于Client/Server數據完整性約束的實現技術08-06

            基于Client/Server數據完整性約束的實現技術08-06

            主站蜘蛛池模板: 7777精品伊人久久久大香线蕉| AV最新高清无码专区| 在线日韩日本国产亚洲| 久久亚洲av综合悠悠色| 日本高清一区免费中文视频| 亚洲欧美高清在线精品一区二区| 377p日本欧洲亚洲大胆张筱雨| 亚洲国产v高清在线观看| 中文字幕日韩精品亚洲一区| 国产成人亚洲精品在线看| 久久一二三四区中文字幕| 蜜桃一区二区免费视频观看| 日本中文字幕在线播放| 国产精品毛片一区二区三| 福利一区二区不卡国产| 十八禁午夜福利免费网站| 亚洲第一尤物视频在线观看导航 | 亚洲国产一区在线观看| 久久国产免费直播| 日韩精品专区在线影观看| 依依成人精品视频在线观看| 亚洲午夜成人精品电影在线观看 | 99re视频在线| 色天天综合网| 久久夜色精品国产欧美乱极品| 欧美性猛交xxxx乱大交丰满| 久久夜色精品国产亚洲av| 99久久亚洲综合精品成人网| 亚洲高清有码在线观看| 欧美xxxxhd高清| 香蕉久久国产AV一区二区| 欧美丝袜高跟鞋一区二区| 亚洲成av人片不卡无码手机版| 九九热精品在线视频观看| 国产在线乱子伦一区二区| 在线高清理伦片a| 蜜桃视频一区二区在线看| 一区二区三区中文字幕免费 | 国产精品久久香蕉免费播放| 午夜大尺度福利视频一区| 国产精品成人午夜久久|