我需要创建一个Z表来存储修改某个自定义对象的原因。
在UI中,用户将选择一个原因ID,然后可选地填写一个文本框。该表将或多或少包含以下字段:
key objectID
key changeReasonID
changedOn
changedBy
comments
我对评论栏表示怀疑。我阅读了关于STRING和SSTRING限制的文档,但我不清楚透明表中使用的STRING类型字段是否有长度限制。
即使长度没有限制(至少受到DB的限制(,我也不确定使用这种方法是否是个好主意,或者你会推荐具有固定长度的CHAR/SSTRING类型吗?
**我的系统正在运行MSSQL数据库。
字符串的长度不受限制,无论是在ABAP结构/表中还是在数据库中。
大多数数据库在此列中只存储一个指针,该指针指向存储在不同内存段中的实际CLOB值。因此,它们限制了这些列的使用,并且可能不允许您将它们用作键或索引。
如果我没记错的话,ABAP每个结构最多支持16个字符串字段,这自然限制了它的用例。还要考虑ABAP结构具有最大大小。
对于您的情况,如果注释仍然是唯一的长字段,并且您实际上可以存储无限制的输入(-->安全约束?(,那么字符串听起来是一个合理的选项。
如果你不确定未来会发生什么,或者为了安全起见,你可能想选择sstring或简单地使用长字符。