sql text字段不能显示的解决方法

数据库 SQL Server
下文为您分析了改了SQL语句或又再原表后加入了新字段后,sql text字段不能显示的问题的原因,并介绍了具体的解决问题,供您参考。

在项目中,有时会遇到之前可以显示sql text字段,但是改了SQL语句或又再原表后加入了新字段后,sql text字段不能显示的问题,着实让人头疼。

最简单的一个技巧就是,把所有ntext,text这样的二进制长对象在设计表、试图和编写SQL时,放在最后,就可以正常的用UD调用并显示了。

例如:
设计留言簿时留言内容(假设字段名为contents)肯定要设置成ntext或text.
那么把这个字段设计为该表最后一个字段,之后
Select * from tablename
这样就可调用了。
或者:
Select id, name, ...., contents form tablename
一定要把ntext、text这种字段放在最后,否则就不能调用。

你说的以前可以显示现在不能显示,我估计是你后改了SQL语句或又再原表后加入了新字段,导致ntext、text不是表中最后的字段,所以出问题!

这个问题曾经困扰过我一段时间,后来不经意间摸索出来

原因

SQL Server 的 "Text" 和 "ntext" 数据类型是数据库里的 BLOB(2进制大对象)一个 BLOB 是一个大文件. 典型的 BlOB 是一张图片或一个声音文件,由于它们的尺寸,必须用特殊的方式处理 (例如: 上传, 下载 或者存放到一个数据库)

解决方法

当使用 UltraDev 的 ASP server (ADO) 对 Microsoft SQL Server 的 BLOB 域做动作时,
你的 SQL statements 的 "SELECT" 子句必须在读所有非 BLOB 列后再 读 BLOB 类型列的值.
为了安全, 你还应当维持在数据库里列的从左到右的次序. 如果你选择在你的数据集的最后两列放两个 BLOB 列, 必须先读前一个再读后一个.不要颠倒次序.

也就是说,我们不是要注意在数据库表中"Text" 或"ntext" 类型的字段排在最后,而是要注意"SELECT" 子句中"Text" 或"ntext" 类型的字段排在最后。如果有一列以上的"Text" 或"ntext" 类型的字段,要注意它们在数据库表中的顺序。
 

 

 

【编辑推荐】

SQL NULL值的相关知识

SQL约束控制语句

SQL表结构信息查询的方法

带您深入了解sql字段类型

SQL修改字段默认值

责任编辑:段燃 来源: 互联网
相关推荐

2010-09-16 15:36:26

SQL Server2

2010-10-14 13:45:44

MySQL函数不能创建

2010-06-17 10:32:13

开机显示Grub

2010-07-21 15:14:59

不能telnet服务器

2010-06-21 09:54:50

Linux Aplay

2010-11-29 11:39:11

Sybase自增字段

2010-10-19 10:25:29

SQL Server连

2010-11-08 16:16:57

SQL Server远

2010-10-22 14:35:02

sql server系

2010-11-10 13:42:32

SQL Server删

2010-10-19 12:22:02

SQL Server远

2010-09-03 11:05:59

SQL删除

2020-10-04 13:29:00

SQL数据库工具

2012-07-27 16:46:17

Windows 7 操作系统

2011-03-29 13:40:40

linuxcacti

2013-01-05 13:49:00

2010-10-19 11:08:00

SQL Server安

2011-07-22 13:46:41

SQL Server MDAC

2009-08-27 09:43:43

Windows 7网络连接

2011-08-29 15:40:00

SQL Server获取TEXT字段的内容DATALENGTH
点赞
收藏

51CTO技术栈公众号