2016-06-28 12 views
-1

SQL挿入ステートメントに関する質問があります。私は、キャリッジリターンまたはラインフィードで文字列を挿入する方法を探しています。キャリッジリターンまたはラインフィードを使用したSQL挿入ステートメント

insert into table (description) 
values ('this is a description' , 'Updated description.') 

しかし、エラーがあるだろうとして、SQLでそうすることはできません:私はこのコードを実行した場合たとえば

のような文字列がある場合:

This is a description. Updated description. 

は、キャリッジリターンとラインフィードが残るようにどのように私はこれを挿入していますか?

これを行う方法はありますか?または、システム識別可能な文字で置き換える必要がありますか?

ありがとうございました。

insert into table (description) 
values ('This is a description. Updated description.'); 

を私はあなたの例を無視して、あなたが求めているものを推測している場合、それはあなたのRDBMS-に応じて、このような何か(のようになります。ただやる、あなたが求めている文字列を挿入するために

+3

1.どのRDBMSプロバイダを使用していますか?あなたの質問にはcr/lfはありません。一方、 '' 'のesacapeがないために構文エラーがあります。 – Tobb

+0

RDBMSによっては、「更新された」+ CHAR(13)+ CHAR(10)+「説明」のようなものかもしれません。 –

+1

説明の途中で 'を使用しています。 – CiccioRocca

答えて

0

私が推測するプロバイダは、)MSSQLです:

insert into table (description) 
values ('This is a description.' || CHR(13)|| CHR(10) || 'Updated description.'); 
+0

こんにちは、私は値を使用してエラーに直面しています( 'これは説明です。' + CHAR(13)+ CHAR(10)+ '更新された説明');私は文を挿入するためにdb2コマンドエディタを使用しています – mary

+0

Db2はchar関数を持っていません。あなたの実際のdb(この場合はdb2)であなたの質問にタグを付けると、答えがずっと簡単になります。私の答えを更新しました。 – Tobb

+0

更新された回答で試してみましたが、両方の値が同じ行に表示されています。更新された説明は次の行になければなりません。私はibm db2バージョン9を使用しています。ありがとう。 – mary

1

char(13)CRです。 DOS-/WindowsスタイルCRLF改行については、次のようなchar(13)+char(10)を、欲しい:

'This is a description.' + CHAR(13)+CHAR(10) + 'Updated description.' 

例:

DECLARE @text NVARCHAR(100) 
SET @text = 'This is a description.' + CHAR(13) + 'Updated description.' 
SELECT @text 

これは、プリントアウトし、以下:

これは説明です。
説明が更新されました。