www.Orasql.Com
 
用户名: 密码:  验证码: 注册|找回密码 oracleawen's blog  
 
         当前位置 >> 技术论坛  发表帖子     论坛版块     查找帖子
关于向数据库中插入单引号的总结-技术论坛||Oracle高手之路—Orasql.Com!
            关于向数据库中插入单引号的总结
 
发贴人:oracle_awen
oracleawen@gmail.com448315233127.0.0.1
用户级别:管理员
发贴总数:1245
注册时间:2011-05-05 09:23:03
2011-05-14 19:16:58
这个网站本来就是oracle数据库网站,所以有很多地方需要插入sql语句。 当然在插入sql语句时候就遇到了一个问题,就是原来sql语句中有大量的单引号,这就遇到了一个令人头疼的问题,比如(title vchar(200)) insert into news (title) values (' TO_CHAR(NVL(A.BYTES / 1024 / 1024, 0), '99,999,990.900')')。 直接插入就会报错。 实在没办法,我就在后台把表单传过来的数据用replace函数,将原来的英文字符的单引号转换为中文字符的单引号,当然,在前台显示的也是中文字符的单引号(占2个字节)。 今天研究了下,虽然在课堂上没弄出来, 后来经过在网上查阅大量资料。其实刚在网上好多内容都是错误的,尤其是说将单引号转换为双引号的。其实也很简单。 就是在写sql语句时候,如果要插入单引号 , 就同时输入2个单引号(切记 不是双引号)。 上面的例子 就可以修改为insert into news (title) values (' TO_CHAR(NVL(A.BYTES / 1024 / 1024, 0), ''99,999,990.900'')')。 输出的内容就为: TO_CHAR(NVL(A.BYTES / 1024 / 1024, 0), '99,999,990.900')。 同样用户在发帖的时候输入了一个单引号, 插入到数据库之前同样需要用replace函数将一个单引号转换为2个单引号。

      
 
  
 Orasql.Com|E-Mail:oracleawen@gmail.com|Phone:15271942915|Copyright © 2011|All Rights Reserved|