gpt4 book ai didi

java - Hybris - 无法增加 MySql DB 中的列大小

转载 作者:行者123 更新时间:2023-11-29 09:29:14 25 4
gpt4 key购买 nike

我正在尝试将列大小从默认的 255 个字符增加到 1024 个字符。请注意,这是现有的生产项目类型 (AbstractOrderEntry) 和属性 (productDescription)。系统init是不可能的。

到目前为止我已经尝试过这两种方法。

  1. 修改了 *-items.xml 文件。

           <attribute qualifier="productDescription" type="java.lang.String">
    <modifiers unique="false" optional="true" read="true" write="true"/>
    <persistence type="property">
    <columntype database="oracle">
    <value>varchar(1024)</value>
    </columntype>
    <columntype database="sqlserver">
    <value>nvarchar(1024)</value>
    </columntype>
    <columntype database="hsqldb">
    <value>VARCHAR(1024)</value>
    </columntype>
    <columntype>
    <value>varchar(1024)</value>
    </columntype>
    </persistence>
    </attribute>
  2. Ant 清理所有和系统更新。 无效

其他方法是:从 mySql Workbench 执行 alter 语句。

更改表 `hybrisDB`.`quoteentries`
更改列 `p_productdescription` `p_productdescription` VARCHAR(1024) NULL DEFAULT NULL ;

我可以从 SQL 工作台看到列大小增加了。但是当我尝试从 Hybris 保存值时,它会抛出运行时异常。

INFO   | jvm 1    | main    | 2019/11/26 14:27:20.262 | com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'p_productdescription' at row 1
INFO | jvm 1 | main | 2019/11/26 14:27:20.262 | at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4118)
INFO | jvm 1 | main | 2019/11/26 14:27:20.262 | at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4052)```


Restarted Hybris after executing direct SQL statement from DB.

Any other inputs?

最佳答案

在您的问题中,您提到了两种方法。我认为您可以通过结合这两种方法来实现您的目标,即,

  1. 修改 $exntesion-items.xml --> ant clean all --> ant updatesystem
  2. 直接在数据库上运行alter语句并启动Hybris

相关:摘自 sap wiki:

enter image description here

引用:help.sap.com

关于java - Hybris - 无法增加 MySql DB 中的列大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59061524/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com