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