在SQL Server数据库中存储大字符串的最佳方法是什么。
我正在使用varchar(8000)
,但是在使用Hibernate持久化我的对象时遇到了这个异常:
>Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: String or binary data would be truncated.
答案 0 :(得分:3)
您使用的是哪个版本的SQL Server?如果版本高于2005使用VARCHAR(MAX)
。如果版本在2005之前,您可以使用TEXT
答案 1 :(得分:1)
如果您想在SQL Server
上存储一个非常大的字符串,可以使用:
varchar(max)
答案 2 :(得分:1)
我可以看到hibernate的标签,你需要@Lob
的标签来存储超大型对象。
指定持久属性或字段应保留为 大对象到数据库支持的大对象
示例:
@Lob @Basic(fetch=LAZY)
@Column(name="REPORT")
protected String report;