JavaScript的 - 在结果集访问的数据类型的varchar(最大)的场
-
13-09-2019 - |
题
在一个JavaScript的应用程序,我们调用SQL Server 2005中返回真实型的3列的结果集在一个存储过程:BIGINT,VARCHAR(20)和VARCHAR(MAX)
当调用存储过程的和阅读的结果,没有被抛出的异常。当枚举结果集:
var dbConn = DatabaseConnectionFactory.createDatabaseConnection("1","2","3","4");
var myResultSet = dbConn.executeCachedQuery("EXEC MySproc");
dbConn.close();
var myString = myResultSet.getString("MyVarcharMaxField");
当检查MyString的值,该值是不是我所期望:
javax.sql.rowset.serial.SerialClob@15b4206
不知道如何获得该领域的真正价值?
调用比其他的getString另一种方法,()可能?
解决方案
<强> VARCHAR(MAX)强>是一个的 CLOB 强>(字符大对象)的数据类型。下面是一些代码,你可以为了使用阅读其内容。
var clobField = myResultSet.getClob("MyVarcharMaxField");
var strOut = new java.lang.StringBuffer();
var aux = new java.lang.String();
// RTF data conversion
var kit = new Packages.javax.swing.text.rtf.RTFEditorKit();
var doc = new Packages.javax.swing.text.DefaultStyledDocument();
kit.read(clobField.getAsciiStream(), doc, 0);
var text = doc.getText(0, doc.getLength());
var myString = text.toString();
不隶属于 StackOverflow