2016-05-05 13 views
1

回答しても謝りますが、検索中に見つけられませんでした。移行スクリプト: 'in data with' 'を

私は移行スクリプトを生成し、このようなそれで何かを持っているストアドプロシージャを書いている:

'insert into dbo.source_line_items (id, name, comment) 
            VALUES(' 
            + ' '+ CASE WHEN id IS NULL THEN isnull(id,'NULL') ELSE ''''+ id + '''' END + ', ' 
+ ' '+ CASE WHEN name IS NULL THEN isnull(name,'NULL') ELSE ''''+ name + '''' END + ', ' 
+ ' '+ CASE WHEN comment IS NULL THEN isnull(comment,'NULL') ELSE ''''+ comment + '''' END + ', ' 

これは、一般的に取り組んでいるが、私は移行していたデータの一部が内の文字」を持っていますそれ。したがって、私は

insert into Table(id, name, comment) 
            VALUES('874', 'O'Brien',NULL) 

のようないくつかのSQL文を生成することのデータであるときに 『'と』を置換自動的に私のスクリプトを持ってする簡単な方法はありますか?

+1

? –

+0

SQL Server Management Studio – PugsAreTheBest

答えて

2

SQL Serverは、ダブルティックを使用して文字列内の単一のティックを検索します。そのような二重のダニでREPLACE()を使用してください:フルで

REPLACE(name,'''','') --To remove ticks 
REPLACE(name,'''','''''') --To replace single with double ticks 

:DBMSは、使用している

CASE WHEN name IS NULL THEN isnull(name,'NULL') 
ELSE ''''+ REPLACE(name,'''','''''') + '''' END 
+0

これは完全に機能しました!ありがとうございました。 – PugsAreTheBest