Query : "SELECT * FROM basictasks WHERE STATUS = 1 and rownum = 1 order by TASKID for update nowait"
octTransaction.Commit();
octTransaction.Dispose();
Tasks tasks = new Tasks();
DataLayer datalayer = new DataLayer();
datalayer = Login.objDataLayer;
OracleCommand ocdSelect = new OracleCommand();
datalayer.BeginTransaction();
Sqlquery = "SELECT * FROM basictasks WHERE STATUS = 1 and rownum = 1 order by TASKID for update nowait ";
ocdSelect.CommandText = Sqlquery;
DataTable dt = datalayer.GetResultDT(ocdSelect, false);
if (dt.Rows.Count > 0)
{
tasks.TaskID = Convert.ToInt32(dt.Rows[0]["TASKID"]);
tasks.MechineName = dt.Rows[0]["MACHINENAME"].ToString();
tasks.Parameters = dt.Rows[0]["PARAMETERS"].ToString();
tasks.TaskName = dt.Rows[0]["TASKNAME"].ToString();
tasks.Description = dt.Rows[0]["DESCRIPTION"].ToString();
tasks.Status = 2;
tasks.StartTime = DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss tt");
tasks.FinishJob = false;
Sqlquery = "UPDATE basictasks SET STATUS = " + tasks.Status + ", STARTTIME = SYSDATE,MACHINENAME = '" + Common.MechineName + "',REMARK = ' ',ENDTIME = null WHERE TASKID = " + tasks.TaskID + "";
datalayer.TableOperation_BySQL(Sqlquery, true);
if (datalayer != null)
datalayer.CheckTransaction(true);
return tasks;
}
else
{
if (datalayer != null)
datalayer.CheckTransaction(true);
}
}
один раз закройте соединение и снова откройте соединение, затем работайте. но я не хочу, чтобы он открывал и закрывал соединение каждый раз. Я хочу использовать одно соединение.