Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2008 SQL Server 2008、JDO(Datanucleus 3.0.7)和列的最大长度_Sql Server 2008_Jdo_Datanucleus - Fatal编程技术网

Sql server 2008 SQL Server 2008、JDO(Datanucleus 3.0.7)和列的最大长度

Sql server 2008 SQL Server 2008、JDO(Datanucleus 3.0.7)和列的最大长度,sql-server-2008,jdo,datanucleus,Sql Server 2008,Jdo,Datanucleus,我正在使用SQL Server 2008,我的类路径上有以下JAR: datanucleus-api-jdo-3.0.6.jar datanucleus-core-3.0.8.jar datanucleus-enhancer-3.0.1.jar datanucleus-rdbms-3.0.7.jar 我想先说,一切都很好 我成功地持久化了一个对象,该对象有一个字符串字段,该字段应该包含ASCII文件内容 当文件较大时,我在持久化时出现以下错误: javax.jdo.JDOFatalUser

我正在使用SQL Server 2008,我的类路径上有以下JAR:

datanucleus-api-jdo-3.0.6.jar
datanucleus-core-3.0.8.jar 
datanucleus-enhancer-3.0.1.jar 
datanucleus-rdbms-3.0.7.jar
我想先说,一切都很好

我成功地持久化了一个对象,该对象有一个字符串字段,该字段应该包含ASCII文件内容

当文件较大时,我在持久化时出现以下错误:

javax.jdo.JDOFatalUserException:尝试存储值“|0 | 1.00 | 1.00 | EUR” |8010312090196 | advbammgm8 | BA硕士米高梅8 | 0 | 1.00 | 1.00 |欧元 在“FILECONTENT”列中,最大长度为256。请更正您的数据

为了清晰起见,我在引号之间删减了文件内容

这是我的package.jdo文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jdo PUBLIC
    "-//Sun Microsystems, Inc.//DTD Java Data Objects Metadata 2.0//EN"
    "http://java.sun.com/dtd/jdo_2_0.dtd">
<jdo>
    <package name="com.mypackage.mycompany.model">

            <class name="FeedEvent" table="MY_UPLOADS" identity-type="application" >
                    <field name="id" persistence-modifier="persistent" primary-   key="true" value-strategy="identity" />
                    <field name="fileName" persistence-modifier="persistent" />
                    <field name="fileSize" persistence-modifier="persistent" />
                    <field name="fileContent" persistence-modifier="persistent"  />
                    <field name="uploaded" persistence-modifier="persistent" />
                    <field name="uploadDate" persistence-modifier="persistent" />
                    <field name="uploadFailureReason" persistence-modifier="persistent" />
                    <field name="eventDate" persistence-modifier="persistent" />
            </class>


    </package>
</jdo>
字段
fileContent
是加载ASCII文件内容时出现问题的字段。 我试图将列类型切换到
nvarchar(max)
text
varchar(max)
,但没有成功

如有任何建议,将不胜感激


谢谢你的时间。

我不想把事情留给“运气”。JDO规范有定义良好的设置列长度的方法;参考任何JDO书籍或DataNucleus的文档都可以清楚地告诉您XML元素
,并且还可以告诉您,绝大多数java字段类型都不需要
persistence modifier=“persistent”
,现在可以在fileContent字段中为列标记添加长度属性//谢谢
public class FeedEvent {

private Long id;
private String fileName;
private long fileSize;
private String fileContent;
private boolean uploaded;
private Date uploadDate;
private String uploadFailureReason;
private Date eventDate;

public FeedEvent() {
}

.......getters and setters here..............

}