Search code examples
sqlsql-servert-sqldelimitersingle-quotes

How do I escape a single quote in SQL Server?


I am trying to insert some text data into a table in SQL Server 9.

The text includes a single quote '.

How do I escape that?

I tried using two single quotes, but it threw me some errors.

eg. insert into my_table values('hi, my name''s tim.');


Solution

  • Single quotes are escaped by doubling them up, just as you've shown us in your example. The following SQL illustrates this functionality. I tested it on SQL Server 2008:

    DECLARE @my_table TABLE (
        [value] VARCHAR(200)
    )
        
    INSERT INTO @my_table VALUES ('hi, my name''s tim.')
    
    SELECT * FROM @my_table
    

    Results

    value
    ==================
    hi, my name's tim.