数据库字段text中的数据没有text字段能生成树形结构吗?

java如何读取sqlserver中的text类型的数据?
站内搜索: 请输入搜索关键词
→ java如何读取sqlserver中的text类型的数据?
java如何读取sqlserver中的text类型的数据?
摘要: java如何读取sqlserver中的text类型的数据?
一字段为text类型,我用getString()读取时,若已数据则一切正常,但只要字段内容为空则有异常发生:java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Underlying input stream returned zero bytes.....搜遍goole+baidu可始终没有一个完整的解决方案,拜托哪位高手指点一下。。。谢谢。。。数据库的设计阶段规定该字段NOT NULL + DEFAULT(。。。。)是的。可惜数据库不是我做的,我也无权修改。。。。今天还没解决! 高手请进来支招啊!自顶...你可用getObject()方法。newxy技术值得关注 http://www.newxy.net最好得方法还是NOT NULL + DEFAULT "" ,在程序里面数据库是Oracle的字段是char类型时候可以用if getString("field")=null{...这样来避免!} 搂住try 一下!写错了:if getString("field")==null是啊 同意楼上的String text=try{
text=Rs.getString("name");}catch(SQLException e){
//doNothing}if ( s == null )
return "";还是不行啊。其实问题的关键不是怎么处理为null的问题,而是只要值为null,而我又用getString()去取的话就会报异常:[Microsoft][SQLServer 2000 Driver for JDBC]Underlying input stream returned zero bytes....期待进一步的解决方案!...getString()取得的是null时候,你可以在把要在画面上显示的值显示成" "!如if getString("field")==null
画面上显示的值="";
画面上显示的值=getString("field")
}我采用了捕捉异常的方法能表面上对付一下:try{
out.println(rs.getString("colname"));}catch(SQLException e){
out.println("");}但这是在利用异常,异常总是要发生的。恐怕不太好。有没有不产生异常就能解决问题的方法呢??欢迎大家讨论。。。publist String toString(String str){if(str==null){
return "";
}}a = toString(rs.getString("field"))再给各位解释一下。问题不是null=>"" 而是当用getString()方法去取一个text类型(sqlserver)数据时,若字段值为null 会报异常!!getString("field"),数据为空应该返回null,不会抛异常的.你可以试一下byte[] b = rs.getBytes("field");判断b是否为空,不为空则据数据库的字符编码String str = new String(b);得到str.可能出现乱玛问题,如果数据库使用的和机器的默认编码不一样,请使用String str = new String(b,"XXX");XXX为数据库的字符编码!getString("field"),数据为空应该返回null,不会抛异常,你那个地方是因为是空时候你还对进行像有值的处理肯定会出异常啊!确实为空时,会报异常!我也奇怪,我的数据库是sqlserver2000+sp3谢谢大家!在sql语句中用isnull函数刚才忘说了,异常是因为从数据库里读出来的时候为null.而getString()方法的返回值是String类型,把底层的流(为null时)转换成String,抛出了异常!getBytes()不行吗?用getObject().toString()方法。捕获异常String TextString="";try{
TextString = rs.getString("field");}catch(Exception e){
TextString = "";}你有修改的权限没?有的话你可以写个更新的语句 先把数据库里面字段为NULL的先更新为空或一个特定的符号然后获取的时候过滤下 就可以避免这问题Object obj=rs.getObject();我认为并不是一定要避免所有的异常 这就好象是一种特殊情况 具体到楼主的例子 它发生了 但只要你用try{}catch(){}能很好的处理就可以了 因为之后不会有连锁反应导致其他的问题发生:数据库连接不会中断,系统也不会崩溃...(个人意见 欢迎指正^_^)从朋友那弄来这段代码,与大家共亨!顺便结帖散分了/** * 当数据库字段为Text类型时调用 * @param rs * @param col * @return */public static String getClobString(ResultSet rs, String col) {
Reader reader = rs.getCharacterStream(col);
if (reader == null) {
StringBuffer sb = new StringBuffer();
char[] charbuf = new char[4096];
for (int i = reader.read(charbuf); i > 0; i = reader.read(charbuf)) {
sb.append(charbuf, 0, i);
return sb.toString();
} catch (Exception e) {
return "";如何在informix数据库中修改text字段类型的值?【java吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:628,397贴子:
如何在informix数据库中修改text字段类型添加值?为什么不能直接用update
name='张三' where id=1
登录百度帐号推荐应用}

我要回帖

更多关于 mysql 字段类型 text 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信