Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Problema Inserimento Dati
domenica 29 aprile 2007 - 15.13
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
mad7898
Profilo
| Newbie
3
messaggi | Data Invio:
dom 29 apr 2007 - 15:13
Ciao a tutti. Premetto che sono nuovo dell'ambiente Visual C#.
Ho un problema , non riesco a fare un inserimento all'interno di una tabella di un database SQL Server 2005.
Ho creato una stored procedure che se eseguita singolarmente funziona, ma che se viene richiamata da codice non effettua l'inserimento.
Mi sono detto, bene, provo a non usare una stored e a fare l'inserimento direttamente da codice: nulla da fare.
Quello che mi sembra strano è che comunque al database riesco ad accedere tranquillamente, infatti provando un'altra stored procedure che mi esegue una select ho il risultato giusto.
La mia domanda è: ma avrò dimenticato qualche impostazione che non mi permette di scrivere sul db da codice?
Vi posto il codice, così magari capite dove sbaglio.
Il codice è il seguente:
Stored Procedure:
ALTER PROCEDURE dbo.StoredProcedure1
(
@NomeGruppo varchar(50)
)
AS
insert into Gruppo (NomeGruppo) values (@NomeGruppo)
Codice C#
SqlConnection connessione = new SqlConnection();
connessione.ConnectionString = "Data
Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\GestioneResidence.mdf;Integrated Security=True;Connect
Timeout=30;User Instance=True";
SqlCommand cmdInserimento = new SqlCommand("StoredProcedure1", connessione);
cmdInserimento.CommandType = CommandType.StoredProcedure;
SqlParameter NomeGruppo = new SqlParameter("@NomeGruppo", SqlDbType.VarChar, 50);
NomeGruppo.Value = "Gruppo di Prova";
cmdInserimento.Parameters.Add(NomeGruppo);
connessione.Open();
int rows = cmdInserimento.ExecuteNonQuery();
if (rows == 1)
{
MessageBox.Show("Esecuzione riuscita!");
}
else
{
MessageBox.Show("Esecuzione non riuscita");
}
connessione.Close();
Quando eseguo il codice la variabile "rows" mi diventa 1, il che dovrebbe significare che è stat modificata/inserita 1 riga, infatti il message box mi da "Esecuzione Riuscita!".... ma nel db non cambia nulla.
Grazie a chi vorrà aiutarmi.
Daniele.
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
dom 29 apr 2007 - 17:23
Prova ad eseguire il tuo programma dalla cartella bin piuttosto che dall'ide, se funziona vuol dire che devi togliere la proprietà "copia ..." dal database.
Tra l'altro l'istruzione "attach" fatta alla prima partenza la considero una vera schifezza.
Normalmente dovresti aprire il Manager di sql express e fare tu l'attach del tuo database, ma microsoft ci considera tutti degli emeriti imbecilli neanche capaci di gestirsi il proprio database, fa la stessa cosa anche con il database di access.
mad7898
Profilo
| Newbie
3
messaggi | Data Invio:
lun 30 apr 2007 - 09:35
Ho provato come mi hai detto tu... anche eseguendo dalla cartella bin il risultato non cambia.
Qualche altra idea? ...io le ho gia provate tutte!
Grazie mille
Daniele.
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !