保留Access DAO SQL INSERT中的尾随空格

时间:2012-12-24 08:34:43

标签: ms-access vb6 dao

使用DAO将数据插入Access数据库。当我连接字段时,删除尾随空格。如何插入数据RETAINING尾随空格?

例如,以下代码在创建列“mytext”时删除字段ref和name的尾随空格:

INSERT INTO mytest (ref, mytext) SELECT ref, ref + name + '/' FROM mytable

mytable是我链接的FoxPro 2.5表。我假设FoxPro表中的列包含尾随空格,因为当我运行包含连接运算符的REPLACE时,我在FoxPro中的数据不占用字段的全宽并且在FoxPro中,显示尾随空格:

REPLACE ALL mytext WITH ref + name

列“ref”和“name”是长度为10的字符字段。如果ref =“S1”且name =“fred” - 在FoxPro中运行的命令将mytext设置为“S1”,然后是8个空格,然后是“fred”,然后是4个假定的空格 - 在VB6中运行的DAO命令将mytext设置为“S1fred”

1 个答案:

答案 0 :(得分:1)

假设[name]是10 ...

也许明确地添加空格会起作用

INSERT INTO mytest (ref, mytext) 
SELECT ref + space(10-len(ref)), 
       ref + [name] + space(20 - (len(ref)+len([name]) ) )+'/' 
FROM mytable

如果ref和/或名称的列大小发生更改,则必须维护此查询。 使用左侧(ref + space(10),10)使用safeside。如果你的列化chnages

,至少它不会破坏