Verwalten der Tabellen "MessagesToLOB" und "MessageContent" in BTARN

Dieser Artikel enthält Informationen zur Verwaltung MessagesToLOB und Tabellen in Microsoft MessageContent BizTalk Accelerator für RosettaNet (BTARN).

Ursprüngliche Produktversion:   BizTalk Server 2013, 2010
Ursprüngliche KB-Nummer:   2897398

Zusammenfassung

Die Skripts, die im Abschnitt "Delete records in MessagesToLOB table" und "Delete records in MessageContent table" unten dokumentiert sind, verwalten die MessagesToLOB und die MessageContent Tabellen. Die MessagesToLOB Tabelle wächst, wenn Nachrichten verarbeitet werden. Der private Prozess leitet eingehende Nachrichten an die MessagesToLOB Tabelle in der BTARNDATA-SQL Server-Datenbank an die Branchenanwendung weiter. Dasselbe geschieht bei der MessageContent Tabelle. Wenn eine Sende- oder Empfangspipeline eine Nachricht verarbeitet, erstellt die Pipeline eine Nachrichtenaktivität. Die Pipeline erstellt einen Nachrichtenaktivitätsdatensatz in der MessageContent Tabelle. Der Datensatz enthält den Inhalt der Nachricht, einschließlich Dienstinhalt und Kopfzeilen.

Hinweis

  • Sie müssen die Skripts in Ihrer Testumgebung sorgfältig testen, bevor Sie sie in einer Produktionsumgebung ausführen. Sie können auch SQL Agent-Aufträge erstellen, um sie nach einem Zeitplan auszuführen.
  • Eine vollständige Dokumentation zur Verarbeitung einer Nachricht durch BTARN finden Sie in der BTARN-Produktdokumentation. Die vollständige Beschreibung würde den Rahmen dieses KB-Artikels sprengen.

Löschen von Datensätzen in der MessagesToLOB-Tabelle

Um Datensätze in der Tabelle zu MessagesToLOB löschen, müssen Sie das Argument in der DATEADD Funktion ändern, die in der Abfrage verwendet Delete wird. In der folgenden Abfrage bedeutet der Parameter, -7 dass die Abfrage Datensätze löscht, die älter als sieben Monate sind.

USE BTARNDATA
DELETE from [BTARNARCHIVE].[dbo].[MessagesToLOB] WHERE TimeCreated < DATEADD(mm,-7,GETDATE())

Löschen von Datensätzen in der MessageContent-Tabelle

Um Datensätze in der Tabelle zu MessageContent löschen, müssen Sie den Parameter @MonthValue ändern. In der abfrage unten bedeutet der Wert -2, dass die Abfrage Datensätze löscht, die älter als zwei Monate sind.

USE BTARNARCHIVE
declare @MonthValue as int
set @MonthValue = -2
DELETE from [BTARNARCHIVE].[dbo].[MessageContent]
WHERE ContentXml IS NOT NULL
AND CONVERT(DATETIME,SUBSTRING(ContentXml,
charindex('<DateTimeStamp>20',ContentXml)+15,8),101) < DATEADD(MM,@MonthValue,GETDATE())