我无法使用修剪后的版本更新列中的值。为啥?

Posted

技术标签:

【中文标题】我无法使用修剪后的版本更新列中的值。为啥?【英文标题】:I can't update values in a column with their trimmed version. Why?我无法使用修剪后的版本更新列中的值。为什么? 【发布时间】:2010-07-29 10:30:37 【问题描述】:

我有一个 Microsoft Access 数据库。在数据库中,有一个表,比如“MyTable”。在 MyTable 中有一个列,例如“MyColumn”。它的类型是文本。此列中的某些数据在其末尾有几个空格字符,因此我想对其进行修剪。我运行了下面的命令

UPDATE MyTable SET MyColumn = trim(MyColumn)

命令已成功执行,但我没有看到任何变化。带空格后缀的数据还在。为什么?

非常感谢,

哈里斯

【问题讨论】:

【参考方案1】:

一个选项是您有一个固定长度的字段(可以通过编程方式创建)。另一个是您的空格不是真正的空格,而是其他字符(例如 NBSP),它们只是“看起来”像空格。

【讨论】:

那么如何去除这些类似空格的字符呢? 类似空格的字符通常是 Chr(255),您可以使用 Mid、Left 和 Right 函数检查这一点。如果是这种情况,您可以使用替换:replace(s,chr(255),"") 是的。我认为 160 是另一个。 另见***.com/questions/52315/… 您可以使用 Asc(Right(MyColumn, 1)) 找出字段末尾的字符。

以上是关于我无法使用修剪后的版本更新列中的值。为啥?的主要内容,如果未能解决你的问题,请参考以下文章

Java版本更新后的ClassNotFoundException

为啥 AWS amplify 无法识别更新的节点版本?

使用同一列中的值更新表中的唯一列

从数据库列和 C# 中的 textBox 值中扣除值,扣除后的值必须存储在新列中

我的NVIDIA GeForce Experience为啥无法更新驱动。

为啥存储函数总是引用更新后的全局 i 变量的值?