字段太小而不能接受所要添加的数据的数量。这个怎么解决?

字段太小而不能接受所要添加的数据的数量。这个怎么解决?,第1张

解决办法如下:

可以打开数据库。

如果在SQL数据库中,将该字段的类型改为:ntext或image 

如果在ACCESS数据库中,将该字段的类型改为:备注  

(一般access的文本字段默认是50,你可以改成最大的255,或把类型改成备注型就可以了。 )

或者你也可以只保存前50个字符,这样写就行了:rs("title")=left(title,50)

数据库(Database)

按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。

数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。

在信息化社会,充分有效地管理和利用各类信息资源,是进行科学研究和决策管理的前提条件。数据库技术是管理信息系统、办公自动化系统、决策支持系统等各类信息系统的核心部分,是进行科学研究和决策管理的重要技术手段。

楼主的SQL语句逻辑挺清晰的,语法上也没有问题。

ACCESS Jet引擎在识读复杂的SQL语句方面会较之大型数据库(例如MSSQL等)要弱一些,楼主贴出的语句里的两个子查询分别含有各自的Group by子句,碰到这种含多个Group by子句的情形Jet引擎就无法正确执行,确实有些古怪,这也许是一个BUG吧。

建议修改一下语句为只使用一次Group by子句来解决这个问题

SELECT t1.m1, t1.qid, sum(t1.区队日产量) AS 月产量, sum(t2.区队领用量) AS 月领用量

FROM (SELECT month(生产日期) as m1,区队id as qid,区队日产量 from 表1)t1,

(SELECT month(领用日期) as m2,区队id as qid,区队领用量 from 表2)t2

WHERE t1.qid=t2.qid and t1.m1=t2.m2

GROUP BY t1.m1, t1.qid

说明:

这样写出的SQL语句ACCESS即使自动为子查询表加上方括号也没有问题可正确运行。另外,楼主原语句中的返回结果中,t1.qid t1.m1与t2.m2 t2.qid是完全相同的,只要输出一个表的qid和月份就行了。如果一定要输出t2.m2 t2.qid,可将上述语句修改如下

SELECT m1, qid, 月产量, m1 AS m2, qid AS t2_qid, 月领用量

FROM

(SELECT t1.m1, t1.qid, sum(t1.区队日产量) AS 月产量, sum(t2.区队领用量) AS 月领用量

FROM (SELECT month(生产日期) as m1,区队id as qid,区队日产量 from 表1)t1,

(SELECT month(领用日期) as m2,区队id as qid,区队领用量 from 表2)t2

WHERE t1.qid=t2.qid and t1.m1=t2.m2

GROUP BY t1.m1, t1.qid)

比如说保存文章标题的字段设置只能容纳30个汉字,但你的标题超过了30个汉字就会得到这样的提示,同样的,像副标题,分类,引用等等,都可能出现类似的情况.新闻内容通常不会出现这样的问题,但也不能完全排除.

检查一下你哪一项录的内容比以往多,试着改短一点.应该可以解决.或是把数据库对应字段改大一些,也可以解决.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10015758.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存