0

我在 Access 中有这个查询:

SELECT a.title, a.init, a.name, l.User AS CreatedBy,
     IIf(IsNull(l.Time),Null,DateAdd("s",l.Time,#3/1/1980#)) AS CreatedAt
     FROM (Reports AS a LEFT JOIN 
     (SELECT id, Min([time]) AS Mintime FROM AuditLog GROUP BY id) AS t
     ON a.id = t.id) 
     LEFT JOIN AuditLog AS l ON (t.mintime = l.time) AND (t.id = l.id)
     WHERE (((a.name) Like 'start*') AND ((a.Active)='Y'));

但由于某种原因a.name,查询中的每个结果都被截断为 25 个字符。为什么是这样?在表中Reports它是正确的并显示全名(25+ 个字符长)。

4

3 回答 3

0

这可能是由于 a.name 字段的大小。如果该字段设置为 varchar(25),它将只允许 25 个字符。

-编辑- 还要检查将数据插入该字段的任何过程、查询或外部来源。它可能是一个配置错误的参数。

于 2013-03-20T15:34:46.203 回答
0

请检查表a中name属性的字段长度。它必须大于您存储的名称。我认为您的姓名长度大于字段长度。

于 2013-03-20T15:37:58.310 回答
0

我有两个相似的名称字段,我误读了一个,它确实在实际表中被截断了。

于 2013-03-20T16:39:55.903 回答