0

別のテーブルに挿入された次のクエリによって返される TEXT 列のデータベース名を別の列に挿入しようとしています。

EXEC master..sp_readerrorlog 0,1,"Database backed up. Database:"

返す

データベースがバックアップされました。データベース: databaseName、作成日 (時刻): 2014/06/13 (17:49:54)、ダンプされたページ: 197581、最初の LSN: 488:6298:36、最後の LSN: 488:6314:1、ダンプ デバイスの数: 4、デバイス情報: ...

ここからの他の投稿の推奨に従って、私は書きました:

SUBSTRING([TEXT], LEN(LEFT([TEXT], CHARINDEX (': ', [TEXT]))) + 1, LEN([TEXT]) - LEN(LEFT([TEXT], 
CHARINDEX (': ', [TEXT]))) - LEN(RIGHT([TEXT], LEN([TEXT]) - CHARINDEX (', ', [TEXT]))) + 1) 
as DatabseName

返す

「DatabaseName」、コンマを保持

私はCHARINDEX parameter '+1'成功せずに両方を変更しようとしました。

カンマを取り除く方法を知っている人はいますか?

4

2 に答える 2

1

この線はどうですか?

SUBSTRING([TEXT], CHARINDEX('Database:', [TEXT]) + 10, CHARINDEX('creation date', [TEXT]) - (CHARINDEX('Database:', [TEXT]) + 12))
于 2014-10-30T13:06:28.797 に答える