读取SQL数据库里TEXT和NTEXT类型字段内容的问题

老是遇到TEXT类型和NTEXT类型的字段读不出来的问题.

今天弄了半天,又查了资料,终于把这个问题搞定了

首先我们应该了解这两个类型的字段到底有什么不同:

虽然看起这他们是叫TEXT,但他不是用来保存文本的,实际上是用来保存文件,和IMAGE类型一样的,一般用来保存MIME类型的数据.

而我把它用来保存新闻的主体内容了,这样能存的更多.结果老是读取不出来......

我用的是ADO连接,在读取数据时,因为习惯了以前ASP的写法,用conn.execute()来读取,,,这种读取对存MIME类型的字段是无效的,,,

所以改成rs.open的方法来读取就好了....

记于此,以做学习.

那么这两种执行方法在本质上有什么不同?在处理MIME类型上有什么不同呢?

个人认为用conn.execute()方式得到的RS里对MIME类型应该只是得到了一个索引,而用rs.open()的方式得到的应该是MIME类型的内容吧!

对两种方式得到的RS的字节大小做个比较应该能说明结果.

那么在应用时,在仅列出索引,标题什么的时,用conn.execute(). 在要显示完整内容时用rs.open(),我想这样能提高不少性能吧!

http://www.cnblogs.com/aowind/archive/2006/09/20/509322.html

时间: 2024-11-18 01:04:48

读取SQL数据库里TEXT和NTEXT类型字段内容的问题的相关文章

有关TEXT和NTEXT类型字段内容的问题

老是遇到TEXT类型和NTEXT类型的字段读不出来的问题. 今天弄了半天,又查了资料,终于把这个问题搞定了 首先我们应该了解这两个类型的字段到底有什么不同: 虽然看起这他们是叫TEXT,但他不是用来保存文本的,实际上是用来保存文件,和IMAGE类型一样的,一般用来保存MIME类型的数据. 而我把它用来保存新闻的主体内容了,这样能存的更多.结果老是读取不出来-- 我用的是ADO连接,在读取数据时,因为习惯了以前ASP的写法,用conn.execute()来读取,,,这种读取对存MIME类型的字段是

c# winform...-vs 2015用c#把当前时间放到连接的sql数据库里

问题描述 vs 2015用c#把当前时间放到连接的sql数据库里 如题,我用的是string now=DateTime.Now.ToShortDateString(),然后再把这个now更新到数据库里一个表里面的字段里,这个字段是datetime类型的,执行完成查看数据库里,显示却是1900-01-01,就是和当前时间不对,求大神讲解,谢谢了. 解决方案 首先你先看看你的now获取的对不对,其次你获取的now是字符串类型的,往数据库存成datetime人家不识别,所以给你个默认值,转成date类

SQL Server中text或ntext 字段内容替换方法

  update 表名 set text类型字段名=replace(convert(varchar(8000),text类型字段名),'要替换的字符','替换成的值') 1.update ntext: (1)varchar和nvarchar类型是支持replace,所以如果你的text/ntext不超过8000/4000可以先转换成前面两种类型再使用replace. update 表名 set text类型字段名=replace(convert(varchar(8000),text类型字段名),

字段-sqlserver数据库里怎样设置datetime类型的小数位数为3位

问题描述 sqlserver数据库里怎样设置datetime类型的小数位数为3位 我在建一张表里的一个datetime类型的生日字段时,怎样将其小数位数设置为3位??? (用的SQLServer2014) 解决方案 我已找到了 要用datetime2(7)这种类型!将7改为3就行了

存在SQL数据库里的图怎么进行旋转操作

问题描述 存在SQL数据库里的图怎么进行旋转操作,先谢谢了 解决方案 解决方案二:详细说明

检查两个数据库里的表名、字段是否一致的一种方法

不知道大家有没有遇到过这种情况. 程序已经给客户安装上了,并且客户已经录入了一些信息,然后程序还需要作比较大的变动(修改功能.增加模块等),数据库就不可避免要做一些改动. 但是这时候已经不能把客户的数据库删掉,换上新的数据库了.只能用添表.添字段的方式了. 如果修改程序的时候做了详细的文档的话,那么就可以按照文档来修改数据库了,但是如果没有文档,或者文档记录的不全,或者修改完成之后想检查一下有没有"漏网之鱼".那么这时候应该怎么办呢?难道要一个一个的检查?! 我们可以使用两个视图和几个

SQL查询语句中的bool类型字段值的写法

  SQL查询语句中的bool类型字段值的写法 没有系统地看过SQL语句的写法说明,只是看了一些常用SQL语句的例子.今天写了条select * from table where sex='true',老是提示标准数据类型不匹配(我用的Access),检查了半天,原来sex字段作为bool(是/否)类型,在SQL语句中其值不需要用''引起来.

在oracle数据库里创建自增ID字段的步骤_oracle

在oracle里使用自增ID字段的步骤比较繁琐,总结如下: -- 创建表 CREATE TABLE ADVICE ( ID INT NOT NULL, ACTIVE INT DEFAULT 1 NOT NULL, TYPE INT NOT NULL, MSG VARCHAR2(512) NOT NULL, ADVICE VARCHAR2(4000) NOT NULL, PRIMARY KEY(ID), CONSTRAINT ADVICE_UNI UNIQUE(TYPE,MSG) )TABLESP

mssql查找备注(text,ntext)类型字段为空的方法_MsSql

解决办法有很多: 1 . select * from 表 where datalength(字段)=0 2.  select * from 表 where cast(字段 as varchar(100))='' 3. select * from 表 where 字段 like ''