`
pokerwen
  • 浏览: 62734 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

SQL 在INSERT特殊字符时的处理

阅读更多

转载:http://bbs2.chinaunix.net/archiver/tid-617054.html

如何向数据库中插入特殊符号。

sql="insert into webPageInfo (webAddrees,content) values('"+thisURL+"','"+Webtext+"')";

Webtext是网页的全文,通过读URL文件得到字符串,它必然包含( '   "   )等特殊符号。这样的话,在书写SQL语句应该如何写,如果像上面书写,就会出现错误。


在SQL中,表示字符串得引号强烈建议使用单引号(')。虽然MySQL也可以使用双引号("),但是为了和SQL Server和Oracle统一,建议都使用单引号。如果在字符串中也有单引号出现的话,在SQL中需要将其替换为两个单引号(''),DBMS会将其解释为一个单引号的。

参考自:http://www.study888.com/computer/data/sqlsl/200506/42507.html
关于SQL的换行符和字符串连接符,在MySQL、SQL Server和Oracle中均有不同,下面以列表显示。   MySQL SQL Server Oracle 
换行符 \n或\r\n或CHAR(10) CHAR(13) CHR(10) 
字符串连接符 CONCAT() + ||或CONCAT() 


另外,符号(&) 在Oracle里有特殊含义,是一个宏变量标识符,在SQLPLUS里执行SELECT 'AAA&BBB' AS STR FROM DUAL,它会提示你输入宏变量值,所有如果SQL里有(&),建议用单引号括起来,如SELECT 'AAA'||'&'||'nbsp;BBB' AS STR FROM DUAL它就不会提示了。
    个人的一点总结,以记之。


单引号' 可以用chr(39)表示,& 可以用chr(38)表示。 
  
  例子: 
  
  select 'test:' || chr(38) || chr(39) from dual; 
  结果是:test:&' 
  
  我找了一份ascii对应表(数码相机拍摄,所以,有点变形,呵呵) 
    
  注:chr()的反函数是ascii(), 比如: 
  select ascii('a') from dual; 
  结果是:97 
  
  另外,单引号也可以这样处理: 
  
  select 'I''m chinese' from dual 
  结果是:I'm chinese.

 

分享到:
评论

相关推荐

    SQL Server查询中的特殊字符处理(C#代码)

    1. **初始化**:首先,我们创建了一个`StringBuilder`对象,这在处理字符串时比简单的字符串连接更高效,特别是在循环中。 2. **检查输入**:如果输入字符串非空且非null,则继续处理;否则,直接返回空字符串。 3...

    SQL关于特殊字符处理的基本方法.doc

    在本文中,我们将讨论 SQL 关于特殊字符处理的基本方法,包括对数据库操作和输出显示在页面上的特殊字符处理。 1. 对数据库操作 在对数据库操作时,用户输入的数据可能会包含特殊字符,这些特殊字符可能会引发安全...

    SQL 语句 将一个表中用特殊字符分割的字段转换成多行数据.docx

    在数据库中,经常会遇到将一个字段中的特殊字符分割的字符串转换成多行数据的情况。这是一个常见的需求,但是网上提供的解决方案往往非常复杂,难以理解和实现。为了解决这个问题,我们可以创建一个字符串分割函数,...

    SQL Server 之 SET IDENTITY_INSERT

    在SQL Server中,`SET IDENTITY_INSERT`是一个重要的命令,它主要用于处理标识列(即自动编号列,通常由`IDENTITY`关键字定义)的显式赋值问题。默认情况下,当向一个包含`IDENTITY`属性的表中插入数据时,标识列的...

    SQL Server表数据导出成Insert语句的工具

    同时,要确保在处理敏感数据时有适当的加密和隐私保护措施。 7. **文件格式与导入**:导出的Insert语句通常保存为文本文件,如.sql格式,方便在其他SQL Server环境中运行。用户可以直接在查询编辑器中打开并执行,...

    Excel生产InsertSQL语句

    此外,对于包含特殊字符的数据,如空格、引号等,需要进行适当的转义处理,以免引起SQL错误。 在“excelIntoSql”这个文件中,很可能是提供了这样的模板或者工具,用户只需将自己的数据填入指定的Excel表格中,就...

    数据库表数据转为insert sql语句

    1、对ms sql server及其他数据库库中类似int identity的数据库类型没有处理,转出来的sql语句直接执行时,还需要做一下处理. 2、不支持长字符集类型.比如ms sql server中的image,oracle中的blob,clob,long以及db2中...

    自动生成Insert,Update,Delete等SQL,批量操作字符,实用小工具

    本工具是VS2005开发,绿色版 无需安装,在framework2.0上面可直接运行。功能如下: 1. 可连接SQL2000,2005,2008,2008R2数据库,能自动列出数据库服务器上的所有表和所有数据库,且每次连接的数据库服务器的地址,...

    导出SQL数据为Insert语句

    在IT行业中,数据库管理和数据迁移是常见的任务,而“导出SQL数据为Insert语句”是一种常用的方法,便于数据备份、迁移或测试环境的搭建。本文将深入探讨这个主题,介绍如何将数据库中的数据转换为Insert语句,并...

    SQL SERVER的insert功能

    在处理大量数据时,可能需要生成一个批处理`INSERT`脚本,将多条`INSERT`语句组合在一起,以提高效率。批处理可以通过分组数据(比如按主键或某个分区字段)来实现,或者设置一个合适的行数限制,比如每1000行生成一...

    数据库Insert语句生成工具(SQLSERVER版).zip

    10. **性能优化**:在大量数据导入时,可以考虑使用BULK INSERT或INSERT INTO...SELECT语句,它们能更高效地处理大数据量的导入。此外,还可以通过事务处理来确保数据的一致性,尤其是在插入过程中遇到错误时。 综...

    连接SQL数据库,自动生成Insert脚本(DELPHI源代码)

    在Delphi编程环境中,连接SQL数据库并自动生成Insert脚本是一项常见的任务,特别是在数据迁移、备份或测试环境中。本文将详细讲解如何利用Delphi来实现这一功能,同时适用于SQL Server 2000和2005。 首先,我们要...

    生成数据库表insert语句脚本

    - 处理NULL值:在生成脚本时,需要确保正确处理NULL值,可能需要特殊标记或转换。 - 避免SQL注入:在使用自动生成的脚本时,应确保数据来源安全,避免SQL注入风险。 - 字符编码:检查数据的字符编码,确保在插入...

    JS代码防止SQL注入的方法(超简单)

    因此,服务器端在处理任何用户输入时,都应该使用参数化查询或者存储过程来代替直接拼接SQL语句。这是防止SQL注入的最有效方法。 服务器端的代码示例(假设使用PHP和MySQLi): ```php // 使用预处理语句和参数化...

    C#实现过滤sql特殊字符的方法集合

    在C#中,防止SQL注入攻击的一个重要方法是过滤SQL特殊字符。SQL注入是一种常见的网络安全威胁,通过在用户输入的数据中插入恶意SQL语句,攻击者可以操纵数据库,获取、修改或删除敏感信息。以下是一些C#中过滤SQL...

    sql server字段保存文件,blob操作

    在SQL Server数据库中,存储文件或二进制大对象(Binary Large Object,简称BLOB)是一种常见的需求。这里我们主要关注如何使用SQL ...同时,确保在处理大量数据时优化查询性能,如合理使用索引、避免全表扫描等。

    向sql server数据库插入中文时显示乱码

    在开发过程中,尤其是在使用ASP.NET与SQL Server进行数据交互时,可能会遇到中文字符在数据库中显示为乱码的问题。本文将详细探讨这个问题的原因,并提供有效的解决方案。 ### 问题概述 当我们在ASP.NET 2.0应用...

    将表中数据导出为insert sql 语句

    - **动态SQL**:在处理大量数据和复杂字段类型时,动态SQL提供了一种灵活且高效的方法。 - **数据类型转换**:正确识别并处理各种数据类型至关重要,避免因数据格式不匹配导致的插入失败。 - **性能优化**:当处理大...

    sql编辑器(insert语句)

    在这个特定的项目中,开发者使用Delphi创建了一个专用的SQL编辑器,旨在提供更高效和舒适的SQL编写体验,特别是对于插入数据的`INSERT`语句。 `INSERT`语句在SQL中用于向表中添加新的数据记录。基本语法如下: ```...

    sqlserver切割字符窜的函数

    在处理SQL Server中的数据时,经常需要对字符串进行分割操作以提取有用的信息。本文将详细介绍一个SQL Server自定义函数`f_split`,该函数能够有效地帮助用户完成字符串分割任务。 #### 函数概述 此自定义函数名为...

Global site tag (gtag.js) - Google Analytics