Ciao a tutti,
ecco il mio problema:
Ho realizzato un progetto che prevede 2 form diverse, in una visualizzo i dati di una tabella di un database attraverso una mentre nell'altra ne permetto l'inserimento. Quando inserisco un dato questo viene salvato correttamente infatti, se provo a reinserirlo, ottengo come risultato che il dato è già presente e se passo alla prima form dove visualizzo l'elenco di tutti i dati vedo anche quello appena aggiunto.
Il problema sorge quando chiudo l'applicazione perchè quando la riapro il dato che avevo appena inserito è scoparso: nella form di visualizzazione non è presente nell'elenco dei dati sul db e posso anche reinserirlo senza che mi dica che il dato è già presente.
Provando a fare una query sul db vedo che i dati non vengono inseriti anche se all'inizio li vede.
Per inserire i dati uso la seguente procedura:
private void Binserisci_Click(object sender, EventArgs e)
{
SqlConnection myconn = new SqlConnection(@"stringa di connessione");
try
{
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "StoredProcedure3";
SqlParameter[] par = new SqlParameter[9];
par[0] = new SqlParameter("@codice", Convert.ToInt32(TBcodice.Text.ToString()));
par[1] = new SqlParameter("@tipo", DDLtipo.SelectedItem.ToString());
par[2] = new SqlParameter("@statoQC", DDLstatoqc.SelectedItem.ToString());
par[3] = new SqlParameter("@statoMantis", DDLstatomantis.SelectedItem.ToString());
par[4] = new SqlParameter("@slaEscalation", DEslaecalation.DateTime);
par[5] = new SqlParameter("@slaAcceptance", DEslaacceptance.DateTime);
par[6] = new SqlParameter("@slaResolution", DEslaresolution.DateTime);
par[7] = new SqlParameter("@ultimaoperazione", TBultimaoperazione.Text);
par
= new SqlParameter("@descrizione", TBdescrizione.Text);
for (int i = 0; i < 9; i++)
{
cmd.Parameters.Add(par[i]);
}
myconn.Open();
cmd.Connection = myconn;
cmd.ExecuteNonQuery();
myconn.Close();
MessageBox.Show("Inserimento avvenuto correttamente", "Operazione Eseguita", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (Exception ex)
{
MessageBox.Show("Si è verificato il seguente errore nell'inserimento dei dati nel database: " + ex.Message, "Errore", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
STORED PROCEDURE
ALTER PROCEDURE dbo.StoredProcedure3 (
@codice int,
@tipo nvarchar(10),
@statoQC nvarchar(50),
@statoMantis nvarchar(50),
@slaEscalation datetime,
@slaAcceptance datetime,
@slaResolution datetime,
@ultimaoperazione text,
@descrizione text)
AS
BEGIN
INSERT INTO Segnalazioni (codice, tipo, statoQC, statoMantis, slaEscalation, slaAcceptance, slaResolution, ultimaoperazione, descrizione)
VALUES (@codice, @tipo, @statoQC, @statoMantis, @slaEscalation, @slaAcceptance, @slaResolution, @ultimaoperazione, @descrizione)
END
è problema del codice o c'è qualche impostazione sul mio pc che impedisce l'inserimento dei dati nel db ?
Grazie a tutti.
Ciao.