Running the following query in SQL Server Management Studio gives the error below.
update table_name set is_active = 0 where id = 3
A severe error occurred on the current command. The results, if any, should be discarded.
I have tried the same update statement on a couple of other tables in the database and they work fine.
DBCC CHECKTABLE('table_name');
gives
DBCC results for 'table_name'.
There are 13 rows in 1 pages for object "table_name".
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
This question is related to
sql-server
sql-server-2005
tsql
I was having the error in Hangfire where I did not have access to the internal workings of the library or was I able to trace what the primary cause was.
Building on @Remus Rusanu answer, I was able to have this fixed with the following script.
--first set the database to single user mode
ALTER DATABASE TransXSmartClientJob
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;
GO
-- Then try to repair
DBCC CHECKDB(TransXSmartClientJob, REPAIR_REBUILD)
-- when done, set the database back to multiple user mode
ALTER DATABASE TransXSmartClientJob
SET MULTI_USER;
GO
A different scenario but the same error: I got this error when I was trying to insert records into a temporary table using a stored procedure. It turned out there was a parameter mismatch. I was trying to insert a BIGINT into an INT.
Credit goes to Vicky Harp: http://vickyharp.com/2012/03/troubleshooting-a-severe-error-occurred-on-the-current-command/
In my case it was something else, +=
operator caused this. I had to replace += X
with field = field + X
to overcome this. I assume this is a bug though I wasn't able to find any related KB on Microsoft sites.
I am using SQL Server 2008 R2(10.50.1600).
This seems to happen when there's a generic problem with your data source that it isn't handling.
In my case I had inserted a bunch of data, the indexes had become corrupt on the table, they needed rebuilding. I found a script to rebuild them all, seemed to fix it. To find the error I ran the same query on the database - one that had worked 100+ times previously.
This error is exactly what it means: Something bad happened, that would not normally happen.
In my most recent case, the REAL error was:
Msg 9002, Level 17, State 2, Procedure MyProcedure, Line 2 [Batch Start Line 3]
The transaction log for database 'MyDb' is full due to 'LOG_BACKUP'.
Here is my checklist of things to try, perhaps in this exact order:
in my case, the method: context.Database.CreateIfNotExists();
called up multiple times before create database and crashed an error A severe error occurred on the current command. The results, if any, should be discarded.
In my case, I was using System.Threading.CancellationTokenSource
to cancel a SqlCommand
but not handling the exception with catch (SqlException) { }
One other possible solution we just found after having this issue across multiple databases/tables on the same server.
Is the max connections open to the sql server. We had an app that wasn't closing it's SQL connection and was leaving them open so we were running around 28K-31K connections (SQL Sever has a max out at 32K ish), and we noticed that once we killed a few thousand sleeping connections it took care of the error listed on this question.
The fix was to update the apps to make sure they closed their connections instead of leaving them open.
There are 3 possibilities on the MS KB
When I see stuff like this: I always think hotfix, engine, server errors etc.
Edit: It's on MS Connect too
Run DBCC CHECKTABLE('table_name');
Check the LOG folder where the isntance is installed (\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG
usually) for any file named 'SQLDUMP*
'
In my case,I was using SubQuery
and had a same problem. I realized that the problem is from memory leakage.
Restarting MSSQL
service cause to flush tempDb
resource and free huge amount of memory.
so this was solve the problem.
Source: Stackoverflow.com