ジャバスクリプト - 結果セット内のデータ型はvarchar(MAX)のフィールドへのアクセス

StackOverflow https://stackoverflow.com/questions/782189

質問

は、JavaScriptのアプリの中で、私たちは3つのタイプの列を持つ結果セットを返すのSQL Server 2005の上のSPROCを呼び出している:。BIGINT、VARCHAR(20)、とvarchar(MAX)を

SPROCを呼び出し、結果を読み込むときは、

、スローされる例外はありません。結果セットを列挙するときます:

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();
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top