oracle插入字符串数据时字符串中有'单引号问题

这篇文章主要介绍了oracle插入字符串数据时字符串中有'单引号问题的相关资料,需要的朋友可以参考下

使用insert into(field1,field2...) values('val1','val2'...)时,若值中有单引号时会报错。

处理方法:判断一下val1,val2中是否含有单引号,若含单引号,则将单引号'替换成两个单引号''。

将字段与字段值组织到一个HashTable中,再抽象出一个组织sql语句的函数getSqlByHashTable():

 HashTable ht =new HashTable(); ht.add(field1,val1); ht.add(field2,val2); ht.add(field3,val3); 。。。 public string getSqlByHashTable(string tablename,HashTable ht){   StringBuilder sb=new StringBuilder();   sb.append("insert into "+tablename+"(");   StringBuilder fsb=new StringBuilder();   StringBuilder vsb=new StringBuilder();   foreach(var key in ht.Keys)   {     fsb.append(key+",");     string value=ht[key];     if(value.trim()=="")     {       value="";     }     else     {       if(value.Contains("'"))       {         value=value.replace("'","''");       }       value="'"+value+"'";     }     vsb.append(value+",");   }   sb.append(fsb.toString().Substring(0,fsb.toString().length-1));   sb.append(") values(");   sb.append(vsb.toString().Substring(0,vsb.toString().length-1));   sb.append(")");   return sb.toString(); }

以上就是oracle插入字符串数据时字符串中有'单引号问题的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » 数据库