Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

zamknij/zabij transakcję

Powinieneś najpierw dowiedzieć się, co robi, skąd pochodzi i, jeśli dotyczy, jak długo może działać:

SELECT 
   r.[session_id],
   c.[client_net_address],
   s.[host_name],
   c.[connect_time],
   [request_start_time] = s.[last_request_start_time],
   [current_time] = CURRENT_TIMESTAMP,
   r.[percent_complete],
   [estimated_finish_time] = DATEADD
       (
           MILLISECOND,
           r.[estimated_completion_time], 
           CURRENT_TIMESTAMP
       ),
   current_command = SUBSTRING
       (
           t.[text],
           r.[statement_start_offset]/2,
           COALESCE(NULLIF(r.[statement_end_offset], -1)/2, 2147483647)
       ),
   module = COALESCE(QUOTENAME(OBJECT_SCHEMA_NAME(t.[objectid], t.[dbid])) 
       + '.' + QUOTENAME(OBJECT_NAME(t.[objectid], t.[dbid])), '<ad hoc>'),
   [status] = UPPER(s.[status])
 FROM
     sys.dm_exec_connections AS c
 INNER JOIN
     sys.dm_exec_sessions AS s
     ON c.session_id = s.session_id
 LEFT OUTER JOIN
     sys.dm_exec_requests AS r
     ON r.[session_id] = s.[session_id]
 OUTER APPLY
     sys.dm_exec_sql_text(r.[sql_handle]) AS t
 WHERE
     c.session_id = 54;

Jeśli masz pewność, że możesz zerwać to połączenie, możesz użyć:

KILL 54;

Pamiętaj tylko, że w zależności od tego, co robiła sesja, dane i/lub aplikacja, która je wywołała, może pozostawić w dziwnym stanie.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dodanie kolumny między dwiema innymi kolumnami w serwerze SQL

  2. FREETEXTTABLE zawsze ma rangę 0

  3. Sqlcmd:Błąd:Microsoft SQL Server Native Client 10.0:Błąd łącza komunikacyjnego

  4. Jak zwrócić podciąg z ciągu w SQL Server za pomocą funkcji SUBSTRING()?

  5. Zrozumienie aliasu kolumny w wybranym zapytaniu w SQL Server — samouczek SQL Server / TSQL, część 115