如何从适配器将列从NOT NULL修改为NULL

2020-08-24 01:02发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我根据此文档自定义了一个适配器

https://help.sap.com/viewer/e974128d984d4bfeaa0c0b582ce24d79/2.0 _SPS02/zh-CN

我想通过使用SchemaChange(com.sap.hana.dp.adapter.sdk.SchemaChange)更新HANA中的模式。

这是我创建SchemaChange的代码

 SchemaChange schemaChange =新的SchemaChange();
 schemaChange.setSupported(true);
 schemaChange.setModColumns(columns);

 AdapterCDCRowSet rowSet = AdapterAdmin.createSchemaChangeRow(<顺序ID>,<事务ID>,SchemaChange,<标题>);
 =>然后通过ReceiverConnection将rowSet发送到HANA。

它与修改dataType或length(从Nullable更改为Not Null)一起工作。 但是,如果将列从"不可为空"更改为可为空,并且没有错误消息,则无法正常工作。 即使,表不包含任何数据。 这很奇怪。

我的问题是:在这种情况下,如何将列从NOT NULL修改为NULL?

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我根据此文档自定义了一个适配器

https://help.sap.com/viewer/e974128d984d4bfeaa0c0b582ce24d79/2.0 _SPS02/zh-CN

我想通过使用SchemaChange(com.sap.hana.dp.adapter.sdk.SchemaChange)更新HANA中的模式。

这是我创建SchemaChange的代码

 SchemaChange schemaChange =新的SchemaChange();
 schemaChange.setSupported(true);
 schemaChange.setModColumns(columns);

 AdapterCDCRowSet rowSet = AdapterAdmin.createSchemaChangeRow(<顺序ID>,<事务ID>,SchemaChange,<标题>);
 =>然后通过ReceiverConnection将rowSet发送到HANA。

它与修改dataType或length(从Nullable更改为Not Null)一起工作。 但是,如果将列从"不可为空"更改为可为空,并且没有错误消息,则无法正常工作。 即使,表不包含任何数据。 这很奇怪。

我的问题是:在这种情况下,如何将列从NOT NULL修改为NULL?

付费偷看设置
发送
2条回答
落灬小鱼
1楼-- · 2020-08-24 01:11

此问题与SAP Advantage Database Server无关。 我已将主要标签更改为" SAP HANA企业云"。

渐行渐远_HoldOn
2楼-- · 2020-08-24 01:26

任何人都可以帮助我解决此问题。

一周热门 更多>