Aracılığıyla paylaş


dbcc opentran (Transact-SQL)

Belirtilen veritabanı içindeki en eski etkin hareket ve eski dağıtılmış ve nondistributed çoğaltılmış hareketleri hakkında bilgi görüntülerSonuçlar yalnızca etkin bir işlem veya veritabanı çoğaltma bilgilerini içeriyorsa görüntülenir.Hiçbir etkin işlemler varsa, bilgilendirici bir ileti görüntülenir.

Not

dbcc opentran desteklenmez olmayan-SQL Server yayımcılar.

Konu bağlantısı simgesiTransact-SQL sözdizimi kuralları

Sözdizimi

DBCC OPENTRAN 
[ 
    ( [ database_name | database_id | 0 ] ) ]
    { [ WITH TABLERESULTS ]
      [ , [ NO_INFOMSGS ] ]
    }
] 

Bağımsız değişkenler

  • database_name | database_id| 0
    Veya kimliği için eski hareket bilgilerini görüntülemek istediğiniz veritabanının adıdır.Belirtilmezse veya 0 belirtilirse, geçerli veritabanı kullanılır.Veritabanı adları için kuralları ile uymak gerekir tanımlayıcıları.

  • TABLERESULTS
    sonuçlar tabloyüklenebilecek sekmeli biçimde belirtir.tablo içine tablo karşılaştırmaları için sonuçlar oluşturmak için bu seçeneği kullanın.Bu seçenek belirlenmezse, okunabilirlik için sonuçlar biçimlendirilir.

  • NO_INFOMSGS
    Bilgi tüm iletileri bastırır.

Açıklamalar

dbcc opentran açık bir hareket içinde hareket günlüğü var olup olmadığını belirlemek için kullanın.backup log deyimkullandığınızda, yalnızca etkin olmayan kısmını günlük kesilebilir; açık bir hareketi, günlük tamamen kesilmesi engelleyebilirsiniz.Açık bir hareketi belirlemek için sp_who elde sistem işlem kimliği.

Sonuç Kümeleri

Hiçbir açık hareket olduğunda dbcc opentran aşağıdaki sonuç kümesi döndürür:

No active open transactions.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.

İzinler

Üyelik gerektiren sysadmin sabit sunucu rolü veya db_owner veritabanı rolüsabit.

Örnekler

A.En eski etkin hareket döndürme

Aşağıdaki örnek geçerli veritabanı için hareket bilgilerini alır.Sonuçlar farklı olabilir.

CREATE TABLE T1(Col1 int, Col2 char(3));
GO
BEGIN TRAN
INSERT INTO T1 VALUES (101, 'abc');
GO
DBCC OPENTRAN;
ROLLBACK TRAN;
GO
DROP TABLE T1;
GO

Sonuç kümesi buradadır.

Transaction information for database 'master'.

Oldest active transaction:

SPID (server process ID) : 52

UID (user ID) : -1

Name          : user_transaction

LSN           : (518:1576:1)

Start time    : Jun 1 2004 3:30:07:197PM

SID           : 0x010500000000000515000000a065cf7e784b9b5fe77c87709e611500

DBCC execution completed. If DBCC printed error messages, contact your system administrator.

Not

"uid (user ID)" Sonuç anlamsız hale gelir ve bir sonraki sürüm ' ün kaldırılacak SQL Server.

B.İLE tableresults seçeneği belirtme

Aşağıdaki örnek dbcc opentran komutun sonuçlar geçici tabloyükler.

-- Create the temporary table to accept the results.
CREATE TABLE #OpenTranStatus (
   ActiveTransaction varchar(25),
   Details sql_variant 
   )
-- Execute the command, putting the results in the table.
INSERT INTO #OpenTranStatus 
   EXEC ('DBCC OPENTRAN WITH TABLERESULTS, NO_INFOMSGS');

-- Display the results.
SELECT * FROM #OpenTranStatus;
GO