Announcement

Collapse
No announcement yet.

Truncate und *-Operator möglich?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Truncate und *-Operator möglich?

    Hallo,

    gibt es die Möglichkeit, den Befehl Truncate auch auf mehrere Tabellen anzuwenden?

    Ich sollte einige Tabellen regelmäßig leeren, die mit abc.[Tabellenname] anfangen. Folgendes ist leider nicht möglich:
    Code:
    truncate table abc.*
    Viele Grüße

  • #2
    Per SQL ein entsprechechendes Statement erzeugen
    (Hier alle Tabellen, die mit tmp beginnen)
    dann das erzeugte SQL-Statement ausführen...
    [HIGHLIGHT="SQL"]DECLARE @Stmt NVARCHAR(MAX);

    SELECT @Stmt = REPLACE(X.SQL, ';', ';'+ NCHAR(13))
    FROM (
    SELECT N'TRUNCATE TABLE '+ SCHEMA_NAME (Schema_ID) + N'.' +name + N';'
    FROM sys.tables
    WHERE name LIKE N'tmp%'
    FOR XML PATH ('')
    ) AS X (SQL)
    ;

    PRINT @Stmt;

    EXEC SP_ExecuteSQL @Statement= @Stmt;[/HIGHLIGHT]

    Comment

    Working...
    X