Open Transactions in SQLServer
SELECT
trans.session_id AS [SESSION ID],
ESes.host_name AS [HOST NAME],login_name AS [Login NAME],
trans.transaction_id AS [TRANSACTION ID],
tas.name AS [TRANSACTION NAME],tas.transaction_begin_time AS [TRANSACTION BEGIN TIME],
tds.database_id AS [DATABASE ID],DBs.name AS [DATABASE NAME]
FROM sys.dm_tran_active_transactions tas
JOIN sys.dm_tran_session_transactions trans
ON (trans.transaction_id=tas.transaction_id)
LEFT OUTER JOIN sys.dm_tran_database_transactions tds
ON (tas.transaction_id = tds.transaction_id )
LEFT OUTER JOIN sys.databases AS DBs
ON tds.database_id = DBs.database_id
LEFT OUTER JOIN sys.dm_exec_sessions AS ESes
ON trans.session_id = ESes.session_id
WHERE ESes.session_id IS NOT NULL
On Error GoTo Hell
martes, 5 de septiembre de 2017
lunes, 7 de agosto de 2017
martes, 12 de agosto de 2014
error HRESULT: 0×80070057 (E_INVALIDARG) [SOLVED]
If your computer dies or crashes during shadow-copy stage of .net framework files, you’re in trouble. The specific error is “Exception from HRESULT: 0×80070057 (E_INVALIDARG)”.
To fix it, you need to get rid of the files that were corrupted during the interrupted file copy:
- Find the .NET framework complilation folder (in my case it was: “C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files”)
- You also might find it on Framework64, or another version (v2, v3) folders... that haves temporary ASP.NET files.
- Delete all folders other than “root”
- Open up the “root” folder and delete all subfolders
- Pull your website up in the browser
- It should compile successfully and load the website.
Thanks to:
http://www.abdinoor.com/2007/08/16/net-website-compilation-error-hresult-0x80070057-e_invalidarg/
martes, 10 de diciembre de 2013
sqlserver REINDEX and UPDATESTATS
Para reindexar y actualizar estadisticas de sql server
USE MyDatabase
GO
EXEC sp_MSforeachtable @command1="print '?' DBCC DBREINDEX ('?', ' ', 80)"
GO
EXEC sp_updatestats
GO
domingo, 24 de noviembre de 2013
Paginado en SqlServer
Segun vi en muchos foros, la mejor forma de paginar es la siguiente:
SELECT *
FROM ( SELECT ROW_NUMBER() OVER ( ORDER BY OrderDate ) AS RowNum, *
FROM Orders
WHERE OrderDate >= '1980-01-01'
) AS RowConstrainedResult
WHERE RowNum >= 1
AND RowNum < 20
ORDER BY RowNum
viernes, 17 de mayo de 2013
Try catch en sql server (con transacciones)
Una buena idea para ejecutar consultas que podrian tirar error y automaticamente revertirlas en caso de que fallen (generalmente usado cuando estan dentro de un bucle) es utilizar un TRY CATCH en SQL.
La forma de utilizarlo va como el siguiente ejemplo:
BEGIN TRAN
BEGIN TRY
La forma de utilizarlo va como el siguiente ejemplo:
BEGIN TRAN
BEGIN TRY
--EJECUCION CON POSIBLE ERROR
Print '> Se hace una ejecucion'
--CUANDO TERMINE DE EJECUTAR TODO:
COMMIT TRAN
END TRY
BEGIN CATCH
ROLLBACK TRAN
END CATCH
Espero que les sea util.
Slds.
viernes, 12 de abril de 2013
Como conocer las conexiones abiertas a SqlServer
Si llegado al caso tienen la necesidad de conocer cuales son las conexiones abiertas hacia un SQLSERVER, pueden obtener informacion de estas 3 maneras:
(Siempre desde Sql Management Studio)
Ejecutar:
EXEC SP_WHO
Devuelve un listado simple de todas las conexiones y su estado actual.
EXEC SP_WHO2
Devuelve un listado completo de todas las conexiones y su estado actual.
Y mi preferido, si necesitan conocer cual base de datos se esta llevando mas conexiones, pueden ejecutar este query:
SELECT
DB_NAME(dbid) [Database]
, COUNT(dbid) Connections
, loginame as Username
FROM sys.sysprocesses
WHERE dbid > 0
GROUP BY dbid, loginame
ORDER BY Connections desc
Espero que les sirva.
Saludos.
Suscribirse a:
Entradas (Atom)