Ich versuche, eine gespeicherte Prozedur in C# aufzurufen.Gespeicherte Prozedur Funktioniert nicht von C# code
using (SqlConnection connection = new SqlConnection(connectionString))
using (SqlCommand command = connection.CreateCommand())
{
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "updateData";
command.Parameters.Add(new SqlParameter("@inrego", rego));
command.Parameters.Add(new SqlParameter("@inOprt", oprt));
command.Parameters.Add(new SqlParameter("@inService", service));
connection.Open();
int update = command.ExecuteNonQuery();
Console.WriteLine(update);
connection.Close();
}
Update zeigt 1 auf Konsole, aber die Datenbank wird noch nicht aktualisiert.
Dies ist die gespeicherte Prozedur
CREATE PROCEDURE [dbo].updateData
@inrego varchar(5),
@inOprt char(3),
@inService as varchar(50)
AS
delete from buses where rego = @inrego;
insert into buses (rego, operator,service) values(@inrego, @inOprt, @inService);
RETURN 0
die gespeicherte Prozedur Laufen funktioniert manuell, auch bekannt als
USE [C:\USERS\---\DOCUMENTS\VISUAL STUDIO 2013\PROJECTS\---\TEST.DB.MDF]
GO
DECLARE @return_value Int
EXEC @return_value = [dbo].[updateData]
@inrego = N'1',
@inOprt = N'2',
@inService = N'3'
SELECT @return_value as 'Return Value'
GO
Werke und aktualisiert die Datenbank erfolgreich, aber die C# -Code Form nicht.
Haben Sie versucht http://stackoverflow.com/questions/4492536/how-run-a-stored-procedure-with-parameters-has-a-return-value-from-code-behi? –
Ich vermute, dass Sie nur "dbo.updateData" für den Anruf benötigen. –
Probieren Sie es einfach @EugenePodskal. Gleiche Ergebnisse leider. – matthew5025