Hej! jag har använt mig av en stored procedure förut som jag nu har ändrat. Jag lade till en parameter till min stored procedure, som jag sedan försöker kolla om den har fått ett värde från min asp.net-sida. Har den redan ett värde, så ska detta värde användas, annars ska den tilldelas ett guid. efter att jag lade till detta så slutade det att fungera. så här ser den ut nu:
USE [Sanji_Database]
GO
/****** Object: StoredProcedure [dbo].[AddArticle] Script Date: 04/22/2011 10:52:40 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[AddArticle]
@articleID uniqueidentifier,
@articlenr varchar(50),
@companyID uniqueidentifier,
@term varchar(50),
@description varchar(MAX)
AS
BEGIN
if @articleID = ''-- OR @articleID = null
BEGIN
--declare @articleID uniqueidentifier
SELECT @articleID = newid()
END
insert into article(ID,companyID,articlenr,term,description)Values(@articleID,@companyID,@articlenr,@term,@description)
END
RETURN
jag hanterar min stored procedure i Microsoft SQL Server Management Studio r2 2008
när den fungerade såg den ut så här:
USE [Sanji_Database]
GO
/****** Object: StoredProcedure [dbo].[AddArticle] Script Date: 04/22/2011 10:52:40 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[AddArticle]
@articlenr varchar(50),
@companyID uniqueidentifier,
@term varchar(50),
@description varchar(MAX)
AS
BEGIN
declare @ID uniqueidentifier
SELECT @ID = newid()
insert into article(ID,companyID,articlenr,term,description)Values(@ID,@companyID,@articlenr,@term,@description)
END
RETURN
Det jag vill åstadkomma är just precis att om det redan skickats med ett ID, så ska det inte genereras något nytt, men om det inte har skickats med något, så vill jag att det ska genereras ett.
Hoppas ni förstår vad jag menar!
Mvh Marcus