SQL Server Deadlock While Inserting Rows In A Table

Oct 15, 2010

The topic of sql server deadlock has been discussed many times, however, I was unsure that even two simultaneous inserts on a table can end up in a deadlock situation. Scenario: While testing our application (SQL Server 2005 as backend, ASP.net 3.5) we inserted records into a table simultaneously (simplified overview) and that resulted into a deadlock for more than 70% of users.

I could not get a hang of this as how an insert is being deadlock as this is not a case of multiple resources. After a detailed analysis (of reproducing the bug by two users) I found that both the processes were holding a RangeS-S lock on the primary key index of the table and were trying to convert this into RangeI-N lock, that resulted into a deadlock and one transaction being killed.

Question: Can we avoid or reduce these kind of deadlocks as this is not a case of change in order of access of resources? Cant' we force the transaction to get exclusive lock initially so that it blocks the other process and avoid deadlock? What (adverse) effects that may have? Also could some one explain more about RangeI-N lock.

Isolation Level for this was "Serializable".

View 2 Replies


Similar Messages:

DataSource Controls :: Sql Server Deadlock / Only Inserting/updating Data Into A Table

Jun 11, 2010

I m getting following error in my eventvwr . I couldnt find reasons of the following error.

"Transaction (Process ID 110) was deadlocked on lock | communication buffer resources with another process and has been chosen as the deadlock victim. Rerun the transaction. "

The only thing my page is doing is inserting/updating data into a table in sql and the thing I can think of is because multiple users are using the same page to insert/update data? Will that cause deadlock?

View 4 Replies

Forms Data Controls :: Code For Inserting Rows By Button Click On Table Or Grid?

Dec 13, 2010

code for inserting rows by button click on table or grid

View 5 Replies

SQL Server :: Delete Objects From Table Using Another Table To Select Rows?

Sep 14, 2010

I have one table named 'dbo.ac_Products' Within this table there is a column named 'ProductId' There is also another table named 'dbo.ac_CatalogNodes' Within this table there is a column named 'CatalogNodeId' and a column named 'CatalogNodeType'

I need to delete all the rows from 'dbo.ac_Products' and 'dbo.ac_CatalogNodes' where 'ProductId' = 'CatalogNodeId' and 'CatalogNodeType' = 1

View 4 Replies

SQL Server :: Inserting Whole Data Table Into Another

Oct 22, 2010

If I create a data tabe in C# like so:

datatable t = new DataTable;
DataColum C1 = new DataColum;//ID column
t.Columns.Add(C1);
//the same with column C2

Then I fill up the table with some data. Then the goal is to either insert this data or update data in an SQLtable in SQL. If the data is inserted, the ID column in t would be empty, if updated, it would not be. So in the insertion case, the sql query needs to make sure that unique IDs are assigned during insertion, in the update case, it just has to look for the right IDs.How to go about this? Asking because I am only familiar with updating and inserting single lines into a table. One could loop in C# over the datatable t of course and insert or update line by line, but this would probably be slow. Is there a way to write an SQL query like this somehow:

Insert Into SQLTable Values (@t)
?
And Update like this:
Update SQLTable SET ... Where C1 = @t.C1
Or something like that.
I know that SQL server can create automatic update and insert queries and that you can then type things in C# like

Adapter.Update(t);

But, this has proven to be super slow on our server, for unknown reasons. I have asked on this forum and got some answers from experts, but was not able to srot out the problem. How can we write a custom SQL query that allow updating and inserting a whole table, instead of just one line at a time?

View 3 Replies

SQL Server :: How To Update Table Value From Another Table With Limit Rows

Jan 20, 2011

I have table a and would like update table a whose values from table b, but not update all rows at table a. Only update record ID in table a match record ID in tableC.

Here is my query

update a
set a.Desc = b.Desc,
a.Value = b.Value
from TableA a, TableB b
where a.name = b.name
and a.ID = b.ID
and a.ID in ( select ID from TableC)

I only have 12 a.ID match TableC, but above query update whole TableA.

How to only update 12 record at TableA from TableB?

View 2 Replies

SQL Server :: Inserting Records Into Table Which Is Dynamically Created?

Sep 16, 2010

I have created table into database dynamicaly,while inserting records into that dynamic table i faced problem.

The name "STD000001" is not permitted in this context. Valid expressions are constants, constant expressions, and (in some contexts) variables. Column names are not permitted. this error occured.

I created dynamic table by ,

declare @STUDENT_Table varchar(50)
set @STUDENT_Table = [dbo].[GetStudentTable](@SchoolID)
exec (@cmd)
[code]....

this stored procedure.....

Should i give any permission while creating dynamic table.

View 7 Replies

SQL Server :: Multiple Users Inserting Values In The Same Table At Same Time?

Dec 15, 2010

I have one SP in sql server which takes the data from user and inserts into three tables. My problem is if multiple users call the same SP in same time it throwing error..(I guess one user at a time can access the table and table will be locked, that is why remaning users getting error)how to handle this situation. it is a web application, so at a time so many people can call the same SP.How can many users insert data in the same table in the same time?

View 5 Replies

SQL Server :: How To Prevent Deadlock

Sep 28, 2010

how to prevent deadlock? read from other forum knowing that even a simple select statement will cause deadlock, but i confuse on how can i prevent it?

View 8 Replies

SQL Server :: Deadlock Sql Exception?

Jan 7, 2011

My application is a survey application and I am using asp.net 2.0 and sql server 2005 version. There are many users taking survey at a single point of time. Some times delock is coming at a single method where i am deleting some records in a loop one by one(This delete statement may be executed for about 20 question in a page). This is a simple delete statement as below

delete table_name where column_name1='' and column_name2=''

column_name1 has foriegn key constraint, column_name2 also has foriegn key constraint.

The exception is as below.

Transaction (Process ID 204) was deadlocked on lock | communication buffer resources with another process and has been chosen as the deadlock victim. Rerun the transaction

View 6 Replies

SQL Server :: Reading Xml File And Inserting Data Into A Tsql Table (no Duplicates)?

Feb 25, 2011

I am writing code to insert values from an xml file. I check for a duplicate before inserting and delete if there is a match. Is there a more effecient way to prevent duplicates before insert a record? my code: private void LoadFData() { SqlConnection oConn = new SqlConnection(ConnectionString); SqlCommand oCommand = new SqlCommand(); oCommand.Connection = oConn; oCommand.CommandType = CommandType.Text; oConn.Open(); // Load committee master files string[] strFiles = System.IO.Directory.GetFiles("fff", "ffff.dta", System.IO.SearchOption.AllDirectories); for (int i=0; i

View 2 Replies

SqlBulkCopy Causes Deadlock On SQL Server 2000?

May 12, 2010

I have a customized data import executable in .NET 3.5 which the SqlBulkCopy to basically do faster inserts on large amounts of data. The app basically takes an input file, massages the data and bulk uploads it into a SQL Server 2000. It was written by a consultant who was building it with a SQL 2008 database environment. Would that env difference be causing this? SQL 2000 does have the bcp utility which is what BulkCopy is based on. So, When we ran this, it triggered a Deadlock error.

Error details: Transaction (Process ID 58) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.

I've tried numerous ways to try to resolve it. like temporarily setting the connection string variable MultipleActiveResultSets=true, which wasn't ideal, but it still gives a Deadlock error. I also made sure it wasn't a connection time out problem. here's the function.

/// <summary>
/// Bulks the insert.
/// </summary>[code].....

View 4 Replies

SQL Server :: How To Get The Top N Rows From SQL Table

Aug 30, 2010

Recently i have come across one question in sql query

Question: Which SQL Query helps to view the TOP N rows From the particular SQL table?

View 3 Replies

DataSource Controls :: Recreate Deadlock In A Sql Server 2008 Database?

Jan 12, 2010

a script which creates a deadlock in a Sql Server 2008 database?I want to do a trace in a customer environment using a trace flag but first I want to test it in my own environment.

View 4 Replies

SQL Server :: Comparing Rows In A Table?

Mar 11, 2011

I have a large database of user profile data. I need to be able to compare 1 row against all of the other rows, for all columns to find the best match.There are around 30 columns of data for each row. I need to be able to find the 5 best matching rows.

I.E.
Row 1 matches on 2 column's
Row 2 matches on 12 column's
Row 3 matches on 7 column's
Row 4 matches on 4 column's
Row 5 matches on 9 column's
Row 6 matches on 23 column's
Row 7 matches on 29 column's

In the end it will show me the data for rows 7, 6, 2, 5, 3 Now to make it even harder, Some of the columns are bit, some are varchar.Some of them may be a direct match, some will need to search if the column for row2 contains the text of row 1.

View 6 Replies

SQL Server :: Columns To Rows - Table

Nov 13, 2010

I have a table think as table1, with 3 columns

col1 col2 col3 -- Columns
Y N 1 -- Data

but i want

colname val
col1 Y
col2 N
col3 1

View 3 Replies

SQL Server :: Count How Many Rows Are In Data Table

Mar 5, 2011

I have a data table called Songs It has SongId as Primary Key of type INT SongName of Type VarChar UserId of Type Int. I simply want to check how many entries are in the Table already by The UserId before they insert more. So If there are already 3 songs by that User, I want to stop the insert process and warn them they have the maxium already. I think i am halfway there already using code below but problem is that UserId is of Type GUID, and not Int so I am missing something. On my Aspx, Page, I have a DetailsView for the Database Insert. I also have the following code using BusLogic Layer and DAL

SongsBLL
public int ScalarQuery(Guid ArtistId)
{
int returnValue = ScalarQuery(ArtistId);
return returnValue;
}
Code Behind ASPX page
This in in DetailsView_ Item Inserting Event
SongsBLL number = new SongsBLL();
currentCount = Convert.ToInt32(number.ScalarQuery(currentCount).ToString());..........

View 9 Replies

SQL Server :: Emailing Contents Of Table (Only Rows)

Dec 15, 2010

Let's say I have a table (Table1) with three columns (Col1, Col2, Col3) and two rows. Let's say I have a button on a page. I want to send the contents of those two rows in an email in the Click event handler of the button. Here's the SQL framework I've got:
[Code]....

View 11 Replies

SQL Server :: How To Iterate Through Rows Of A Temp Table

Mar 21, 2011

Suppose I have a temporary table (Shown below). The table is defined and populated in my stored procedure. After it is populated, I need to go through every row in the table. Here is what I need to do :

Check if Amount2 > Amount1 If Amount2 > Amount1 then set Amount1 = Amount2

It feels a little akward for me to use the temp table.

[code]....

View 2 Replies

C# - Filter Sql Server Table Rows Using Many Filters

Mar 23, 2011

I have a table called Student with a lot foreign keys that will be used after to filter students(table rows).The structure of this table is like:

StudentId GenderId DegreeId NatioanlityId
1 2 2 3
....

As a student can speak one or more language,the Sudent Table is linked to language table like this

StudentId LangaugeId
1 1
1 2
1 3

And a student can chose one or many subjects for exam:

StudentId ExamId
1 1
1 2
....

In my asp.net page I would like to filter students via checkbox using ajax for example, student having female and male gender with Degree 1,speaking language 1,2... I filter rows in a stored proc using user defined table,and I have to use a lot of IF statements like this

if(EXISTS(SELECT GenderId FROM @GenderTable))
if(EXISTS(SELECT DegreeId FROM @DegreeTable))
if(....)
else
if(...)

How can I avoid all the IF statements? I have more than 5 filters.It's boring.

View 1 Replies

SQL Server :: Find Out Distinct Rows In Table

Sep 29, 2010

I have a one sql table, it contain 5 column id, ipaddress, status, datetime, value. I need to find distinct rows as per ipaddress column basic..

View 7 Replies

Reordering Table Rows On Server Side?

Feb 22, 2011

I have a table which contains asp radiobuttonlists (see below) for a survey. Once submitted the results are written to a database.I would like to use this same table for a similar survey, but the trouble is the question order needs to be different. The questions are the same, just in a different order. Is there a way (server side) to change the order of the table rows?

<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td> </td>

[code]...

View 1 Replies

DataSource Controls :: Facing Alot Of Sql Deadlock In My Event Handle On Server Computer?

Jan 18, 2010

I would like to know how deadlock is happen, i have facing alot of sql deadlock in my event handle on server computer.

View 3 Replies

SQL Server :: Merge Two Rows In A Table With Same Date Time?

Mar 25, 2011

write the query for merging two rows in a table with same date and time into one row...

2009/12/23 13:46:50 -0.43546 0.02395 -7.1621 0.45529
2009/12/23 13:46:50 0 0 0 0
2009/12/23 13:47:00 -0.47114 -0.00515 -7.1779 0.42751
2009/12/23 13:47:00 0 0 0 0

i want to merge this same datetime rows into one row ..

View 4 Replies

SQL Server :: How To Concatenate Multiple Rows Of Single Table

Mar 8, 2011

I've a table where one person teaches multiple classes. It looks like this.

Table1

Id Name Class Subject
----------------------------------------
2 Sam 12 English
2 Sam 10 Maths
2 Sam 10 English
2 Sam 8 History
2 Sam 12 Economics

Here Sam teaches Class 12 - English & Economics, Class 10 - Maths & English, Class 8 - History

I want to display the result like this -

Id Name Class Subject
---------------------------------------------------------------
2 Sam 12 English, Economics
2 Sam 10 Maths, English
2 Sam 8 History

How to concatenate multiple Rows?

View 6 Replies







Copyrights 2005-15 www.BigResource.com, All rights reserved