由于项目的需要,将字段siteMap类型改为text,因此在java程序中一些jdbc插入、查询的方法connection.prepareStatement()等结果只截取长字符串的一部分,请问这是怎么回事,怎么解决这个问题?辛苦各位了,使劲给分
备注:数据库是sqlserver2000

解决方案 »

  1.   

    在sql语句中进行截取,不要放到代码中
      

  2.   


    怎么截取,能不能详细点啊?我的方法是这样的:其中,siteMap是text类型
    String createSql = "insert into bbs_site (name,url,siteMap,classId,description,stat,tmpl_id) values (?,?,?,?,?,0,?)";
    DBExecutor db = new DBExecutor();
    int num = 0;
    try {
    db.createPreparedStatement(createSql);
    db.setString(1, siteInfo.getName());
    db.setString(2, siteInfo.getUrl());
    db.setString(3, siteInfo.getSiteMap());
    db.setString(4, siteInfo.getClassId());
    db.setString(5, siteInfo.getDescription());
    db.setInt(6, siteInfo.getTmplId());

    num = db.exePreparedUpdate();
    } catch (SQLException e) {
    throw e;
    } finally {
    try {
    db.closeAll();
    } catch (RuntimeException e1) {
    }
    }
    return num;
      

  3.   


    每次通过jdbc查询出来后,字符都只显示前面一些字符串,经验证显示前30个字符。