java读取sqlserver2008数据库的ntext类型.docx

java读取sqlserver2008数据库的ntext类型.docx

ID:59254624

大小:244.29 KB

页数:6页

时间:2020-09-08

java读取sqlserver2008数据库的ntext类型.docx_第1页
java读取sqlserver2008数据库的ntext类型.docx_第2页
java读取sqlserver2008数据库的ntext类型.docx_第3页
java读取sqlserver2008数据库的ntext类型.docx_第4页
java读取sqlserver2008数据库的ntext类型.docx_第5页
资源描述:

《java读取sqlserver2008数据库的ntext类型.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Java读取sqlserver2008的ntext从网上查询到:在数据库(ms-sql)中使用ntext等大文本类型的数据时,当文本长度很大时,(比如超过4000),在使用select语句获得的数据集中将无法直接得到该字段的内容,必须要用其他方法获得。cx在java中可用ResultSet对象存放数据集,但无法直接将结果集中的ntext内容转换为字符串(如使用ResultSet对象的各getString()方法),而要用到ResultSet对象的getBinaryStream()方法。rpZT下面是一段完整地jav

2、a代码,将整个过程放在一个类中,代码中有较详细地说明,这里不再赘述,敬请各位参考、指正:(如有更好的办法请及时说明)j(在代码中每次从数据库读取一个字节,是应为不知道数据库存放页面文件的最小占用空间是否为簇,否则可以一次多读一些了!)//代码起始2importjava.io.InputStream;importjava.io.IOException;importjava.io.InputStreamReader;importjava.io.UnsupportedEncodingException;importjav

3、a.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;importjava.sql.ResultSet;importjava.sql.DriverManager;importjava.sql.Connection;importjava.lang.ClassNotFoundException;publicclassReadBlobFromDatabase{=,KAvpublicReadBlobFromDatabase(){try{//

4、加载数据库驱动程序,这里使用jdbc-odbc数据桥建立与数据库的连接sClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connectionconn=DriverManager.getConnection("jdbc:odbc:srrmis","username","passwd");Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE

5、)//执行查询,获得结果集。在这个SQL语句中,ntext_column是一个ntext类型的字段,}49//约束条件选择index值为2的记录H94yVResultSetrs=stmt.executeQuery("selectntext_columnfrommytablewhere[index]=2")//将记录集中的指针指向第一条记录Fif(rs.next()){//定义整数c,存放InputStream读出来的字节所对应的整数eintc;InputStreamis=rs.getBinaryStream(1);

6、//将二进制数据字节流转换为字符流,编码为16位、低位顺序的双字节国家字符(微机格式)j)InputStreamReaderisr=newInputStreamReader(is,"UnicodeLittle");//循环读取文本对应的字节,直到文本结尾ndwhile((c=isr.read())!=-1){;StringtmpString=""+(char)c;//这里用输出测试读出的结果,如果想将各个字符组合、或执行其他的处理,JX//可以在这里编写代码{9System.out.print(tmpString)

7、;}}}我的配置:Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//sqlserver2005或者sqlserver2008需要sqljdbc4.jarStringdbUrl="jdbc:sqlserver://127.0.0.1:1433;databasename=slbs";Stringuser="sa";Stringpwd="sa*&";试了一下报错:com.microsoft.sqlserver.jdbc.SQLServerExc

8、eption:不支持从nvarchar到BinaryStream的转换。原来是我用的驱动不匹配;应用:Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");读取成功。不过需要配置jdbc.odbc在win7下配置:名称与Connectionconn=DriverManager.getConnection("jdbc:od

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。