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

Malak ·
更新时间:2024-11-10
· 932 次阅读

使用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插入字符串数据时字符串中有'单引号问题,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的,在此也非常感谢大家对软件开发网网站的支持!



Oracle 引号 字符 数据 单引号 字符串

需要 登录 后方可回复, 如果你还没有账号请 注册新账号