如何用VB存取SQL Server中的图像数据

时间:2020-10-08 17:33:07 计算机毕业论文 我要投稿

如何用VB存取SQL Server中的图像数据

如何用VB存取SQL Server中的图像数据

何益斌 高景昌 李小琳

吉林大学130026

摘要 本文介绍MIS SQL Server对图像数据的存储机制和存取方法。针对VB开发工具,介绍了一种通过ADO Field 对象的GetChunk 方法和AppendChunk 方法来存取MIS SQL Server中的图像数据的方法。

关键词 ADO Field对象 BLOB 对象 GetChunk和AppendChunk 方法 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

【如何用VB存取SQL Server中的图像数据】相关文章:

1.SQL Server常用数据类型

2.Sql Server、Access数据排名的实现方法

3.细说SQL Server中的视图总结

4.sql server中避免死锁的方法

5.探究SQL Server 数据页缓冲区的内存瓶颈

6.如何快速掌握SQL Server中的日志转移

7.SQL Server vNext on Linux安装

8.SQL server中字符串逗号分隔函数

9.远程连接SQL Server 2000的方法