Lock

K

Karthikeyan

HI,

I am getting a Connection Time Out Error While executing the follwoing code

Transaction isolation Level is "Read Commited"


String sConnectStr = "User ID=sa;Password=sa;Database=DAL;Server=.";

SqlConnection objConnection = new SqlConnection(sConnectStr);

objConnection.Open();

SqlTransaction objTran = objConnection.BeginTransaction();

SqlCommand objCommand = new SqlCommand();

objCommand.Connection = objConnection;

objCommand.CommandText = "INSERT INTO Patient (Name, OId) VALUES (@Name,
@OId)";


SqlParameter objParam1 = objCommand.CreateParameter();

objParam1.DbType = DbType.String;

objParam1.Value = "Test ST";

objParam1.ParameterName = "@Name";

objCommand.Parameters.Add(objParam1);

SqlParameter objParam2 = objCommand.CreateParameter();

objParam2.DbType = DbType.String;

objParam2.Value = "f6a07441-c3e2-4aaa-8913-cfbab8df395b";

objParam2.ParameterName = "@OId";

objCommand.Parameters.Add(objParam2);

objCommand.Transaction = objTran;

MessageBox.Show(objCommand.ExecuteNonQuery().ToString());



SqlConnection objConnection1 = new SqlConnection(sConnectStr);

objConnection1.Open();

SqlCommand objCommand1 = new SqlCommand();

objCommand1.Connection = objConnection1;

objCommand1.CommandText = "select count(*) from Patient";

SqlDataReader objReader = objCommand1.ExecuteReader();


objTran.Commit();


How to over come this??

Thanks in advance

Regards,
karthikeyan. G
 
M

Miha Markic

Hi,

You should use same connection and transaction for reading data (otherwise
first connection is locking the data and the second can't access it).
Also, you might remove messagebox from the code as it will cause unnecessary
delay.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top