我正在尝试将大于5500个字符的字符串值插入到MSSQL 2008数据库中。我收到了错误
字符串或二进制数据将被截断。
当我尝试插入这些值时,即使列的数据类型声明为nvarchar(max)。我可以输入字符串大小的上限吗?如果是这样,那么这个问题的解决方案是什么?
修改
当我通过mgmt studio手动输入数据时,它可以工作。但是,我正在通过JDBC-driver& amp;准备好的陈述。
我的查询格式为:
UPDATE table SET columnX = value1 WHERE columnX = value2;
答案 0 :(得分:0)
Microsoft鼓励我们使用SQLServerPreparedStatement来修改像varchar(max)这样的大值类型。 http://msdn.microsoft.com/en-us/library/ms378813.aspx
当我遇到与JDBC / Pentaho类似的问题时,您也可以使用存储过程来解决问题,就是我所做的。
您可以在完成任务的sql-server上编写存储过程。只需从Java代码中调用该存储过程。
我希望有所帮助!