2020-09-08 03:24发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,只是想知道我们是否可以在运行时通过Java代码向表/类型添加索引?
作为示例,由于数据库性能的提高,我们的cron作业存在一些问题,该问题花费较长的时间。 现在我们只是想在将要在此表上执行的灵活搜索查询之前,将索引添加到样本地址表/类型中。
我们还希望在运行灵活搜索查询时或在完成cron作业后立即删除索引。
嗨-在Hybris中,所有DDL语句都应作为Init/Update的一部分执行。 另请注意,更新不会删除任何数据库对象(表,索引,列等)。 您应该在 items.xml 中定义索引并执行Update。
items.xml
尽管如此,您可以尝试以下常规代码来创建数据库索引:
导入de.hybris.platform.core.Registry conn = Registry.getCurrentTenant()。getDataSource()。getConnection() stmt = conn.createStatement() ddlQuery ="您的创建索引SQL命令" stmt.executeUpdate(ddlQuery)
我只能看到在item.xml文件中的项目定义期间向项目类型添加索引,如下所示
但是想检查一下,我们也可以在运行时在数据库级别上执行flexiblesearch查询之前添加一个索引,欢迎任何建议。
您 即使有可能也不应该这样做。 如您所述,通过索引语句创建数据库索引。 或者,当您需要非常具体的索引时,请数据库管理员为您创建索引。 使用大量数据索引创建可能需要几个小时。 同样,您创建索引的Java代码必须考虑索引已经存在的情况,否则它将引发异常。 想象一下,数据库管理员可以优化索引,但是您的代码每次运行都会重新创建索引,这是维护的噩梦。 另外:您确定需要索引吗? 数据库非常好,可以处理上万条记录而无需索引
感谢答复。 它可能无法满足确切的要求,但感谢您为此付出的时间。 我将尝试建议更新items.xml文件,并查看它们的反馈。
最多设置5个标签!
嗨-在Hybris中,所有DDL语句都应作为Init/Update的一部分执行。 另请注意,更新不会删除任何数据库对象(表,索引,列等)。 您应该在
items.xml
中定义索引并执行Update。尽管如此,您可以尝试以下常规代码来创建数据库索引:
我只能看到在item.xml文件中的项目定义期间向项目类型添加索引,如下所示
但是想检查一下,我们也可以在运行时在数据库级别上执行flexiblesearch查询之前添加一个索引,欢迎任何建议。
您 即使有可能也不应该这样做。 如您所述,通过索引语句创建数据库索引。 或者,当您需要非常具体的索引时,请数据库管理员为您创建索引。 使用大量数据索引创建可能需要几个小时。 同样,您创建索引的Java代码必须考虑索引已经存在的情况,否则它将引发异常。 想象一下,数据库管理员可以优化索引,但是您的代码每次运行都会重新创建索引,这是维护的噩梦。 另外:您确定需要索引吗? 数据库非常好,可以处理上万条记录而无需索引
感谢答复。 它可能无法满足确切的要求,但感谢您为此付出的时间。 我将尝试建议更新items.xml文件,并查看它们的反馈。
一周热门 更多>