为什么jdbc使用mysql时,向字符类型列插入字符串时字符串含有的"\"没了。
比如:str="E:\\a\\b\\c"
执行executeUpdate("insert into mytable (strCol) values ('" + str + "')")
后strCol读出来后为E:abc
好像是转义替换的问题!
该怎么解决!本人刚接触JDBC

解决方案 »

  1.   

    这是转义字符。如果要在字符串中出现特殊字符,比如",\等,就需要加一个\来表示,如果把str="E:\\a\\b\\c"改为str="E:\a\b\c"系统就会提示出错的。
      

  2.   

    呵呵,在插入数据库时,strCol字段真正插入的值是"E:\a\b\c",(由于'\'是转义字符)同理,你在从数据库读数据出来时,本来是"E:\a\b\c",但是'\'再次转义,就变成了“E:abc”
    这与JDBC无关!