现在的位置: 首页 > 综合 > 正文

关于SQL中存储单个分号字段

2013年10月04日 ⁄ 综合 ⁄ 共 628字 ⁄ 字号 评论关闭

 尝试在SQL中插入一个带有' 的数据,比如: I'm a boy

此时在向数据库中insert时就会出错!

解决方案是:写成如下方式:

insert into tab values(' I''m a boy') ;

后来由于需要将数据库进行迁移,需要读取数据后,然后重新写入数据,这个时候就需要将原语句中含有'的字段覆盖成''或者/',写了个方法转换一下;然后再调用就OK啦!!!!

代码如下:

 

    public static String replace(String str)
    
{
        String result
="";
        String temp[]
=str.split("'");
        
for(int x=0;x<temp.length;x++)
        
{
            System.out.println(temp[x]);
            result
+=temp[x]+"''";
        }

        
return result.substring(0,result.lastIndexOf("'")-1);
    }

 

然后再需要的时候调用就可以了

sql="insert into  tab values ('"+rs.getString(1)"')";
connection.prepareStatement(sql.toString()).executeUpdate();

 

 

抱歉!评论已关闭.