我在操作数据库的代码中使用了事务myConMoney.Open();
SqlCommand myCommand = myConMoney.CreateCommand();
SqlTransaction myTrans;

myTrans = myConMoney.BeginTransaction(IsolationLevel.RepeatableRead);
//MSDN中说RepeatableRead是:在查询中使用的所有数据上放置锁,以防止其他用户更新这些数据。防止不可重复的读取,但是仍可以有幻像行。
这样的话应该是别的用户无法对我所操作的数据进行修改,而且不能读取,但我不知道我的代码能不能实现我想要的结果...怎么样能验证别的用户无法访问呢?
myCommand.Connection =myConMoney;
myCommand.Transaction = myTrans;

try
{
if(QK!=0)
{
myCommand.CommandText="Select * From _Main Where _id='"+_ID+"'";
myCommand.ExecuteNonQuery(); myCommand.CommandText = "Update _Main set _money="+AddMoney+" where _id='"+_ID+"'";
myCommand.ExecuteNonQuery();
myTrans.Commit();
Console.WriteLine("Both records are written to database.");
myConMoney.Close();
}
return true;
}
catch(Exception e)
{
myTrans.Rollback();
myConMoney.Close();
Console.WriteLine(e.ToString());
Console.WriteLine("Sorry, Record can not be updated.");
return false;
}