我有一个字符串值,并将SQL Server插入varbinary(max)数据类型
我的代码:
String fullText ="abcd"
byte[] binaryFullText = fullText.getBytes();
preparedStatement.setBytes(33, binaryFullText);
preparedStatement.execute();
connection.commit();
,但其插入方式类似于"0x4E18ACADEBE27B0ADEAAE"
我想在DB中插入实际值吗?有时我的字符串超过了varbinary(max)的最大限制,因此在这种情况下。
如何将整个值插入字段?
答案 0 :(得分:0)
我可以想到的一种解决方案是,如果您确实超出了最大值,则创建一个替代表。 假设所讨论的值是data且位于表foo中
-----foo-----
foo.id
foo.data_id
foo.descpit
创建另一个表
-----bar------
bar.id
bar.data
现在,您只需将更多具有正确ID的条目添加到bar表中,就可以根据需要将任意数量的数据链接到foo.data_id。
这还允许您将字段的值更改为将存储纯文本的文本。我不认为您可以将位存储到字段中并期望阅读纯文本
您失去了一些灵活性,但是获得了无限的理论存储能力。