Purtroppo non posso cambiare il database, per causa forza maggiore.Io l'ho fatto presente,mi è stato risposto di no!
Si per quanto riguarda l'avvertimento lo fa lui tramite la transazione,all'interno del try e catch con il Rollback!
Però volevo aggiungere che io ho lavorato sia con MYsql e SqlServer 2005 e in nessuno dei due casi non ho mai fatto uso delle transaction in questo caso di insert, al massimo nella select dove un utente poteva prendere lo stesso record!
Cmq volevo sapere da te se il codice che ho postato io è esatto:
codice:
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Inetpub\\wwwroot\\DataEntry\\App_Data\\DataEntry1.mdb");
OleDbCommand cm = new OleDbCommand();
OleDbTransaction transaction = null;
cm.Connection = conn;
if(this.DataExpression(this.Data.Text.Trim())==true)
{
if (CheckPhone(telefono.Text.ToString()) != false)
{
if (Nominativo.SelectedItem.Text.Trim() != "" && Campagna.SelectedItem.Text != "" && Vendita.SelectedItem.Text.Trim() != "" && REC.SelectedItem.Text.Trim() != "")
{
try
{
conn.Open();
transaction = conn.BeginTransaction();
cm.Connection = conn;
cm.Transaction = transaction;
cm.CommandText = "INSERT INTO Operazioni(Data,oper,nominativo,campagna,vendita,telefono,rec,extrafile,recuperato,caricato)VALUES(@Data,@oper,@nominativo,@campagna,@vendita,@telefono,@rec,@extrafile,@recuperato,@caricato)";
cm.Parameters.AddWithValue("@Data", Data.Text.ToString());
cm.Parameters.AddWithValue("@oper", OP.Text.ToString());
cm.Parameters.AddWithValue("@nominativo", Nominativo.Text.ToString());
cm.Parameters.AddWithValue("@campagna", Campagna.Text.ToString());
cm.Parameters.AddWithValue("@vendita", Vendita.Text.ToString());
cm.Parameters.AddWithValue("@telefono", telefono.Text.ToString());
cm.Parameters.AddWithValue("@rec", REC.Text.ToString());
cm.Parameters.AddWithValue("@extrafile", extrafile.Text.ToString());
cm.Parameters.AddWithValue("@recuperato", recuperato.Text.ToString());
cm.Parameters.AddWithValue("@caricato", Session["uname"].ToString());
cm.ExecuteNonQuery();
transaction.Commit();
Errori.Text = "Dato Inserito Correttamente";
Data.Text = "";
OP.Text = "";
Nominativo.SelectedItem.Text= "";
Campagna.SelectedItem.Text = "";
Vendita.SelectedItem.Text = "";
telefono.Text = "";
REC.SelectedItem.Text = "";
extrafile.SelectedItem.Text = "";
recuperato.SelectedItem.Text = "";
}
catch (Exception er)
{
Errori.Text=er.Message + er.StackTrace + er.Source;
try
{
transaction.Rollback();
}
catch (Exception err)
{
Errori.Text="Spiacente ma il documento non è stato inserito.Riprova"+ " " + err.Message + err.Source + err.StackTrace;
Data.Text = "";
OP.Text = "";
Nominativo.SelectedItem.Text = "";
Campagna.SelectedItem.Text = "";
Vendita.SelectedItem.Text = "";
telefono.Text = "";
REC.SelectedItem.Text = "";
extrafile.SelectedItem.Text = "";
recuperato.SelectedItem.Text = "";
}
}
finally
{
conn.Close();
}
}
else
{
Errori.Text="I Campi Nominativo,Campagna,Vendita e REC sono campi Vuoti";
}
}
else
{
Errori.Text="Il Campo Telefono deve iniziare con lo 0";
}
}
else
{
Errori.Text = "Spiacente ma il Formato data non è corretto";
}
conn.Close();
}
Grazie ancora