| | |
Stored Procedures to insert into a table
Please support our MS SQL advertiser: Intel Parallel Studio Home
Thread Solved |
•
•
Join Date: Jul 2005
Posts: 27
Reputation:
Solved Threads: 0
I have some tables that i have created in SQL Server and i want to write a stored Procedure that will insert data on to one of my tables AND also be able to update say if i select record
MS SQL Syntax (Toggle Plain Text)
CREATE PROCEDURE Sp_cust_SaveCustomer --ALTER PROCEDURE cust_SaveCustomer (@id int, @ Surname varchar(50), @ Initials varchar(50), @ SEX_CODE varchar(50)) AS IF @id=-1 BEGIN INSERT INTO cust_Customer(Surname,Initials,SEX_CODE) SELECT @ Surname,@ Initials,@SEX_CODE SELECT @@identity END ELSE BEGIN UPDATE cust_Customer SET Surname= @ Surname , Initials =@ Initials , SEX_CODE =@ SEX_CODE WHERE id=@id SELECT @id END
0
#2 Nov 10th, 2009
This should do the trick:
Results in:
And the final data:
MS SQL Syntax (Toggle Plain Text)
IF OBJECT_ID('test_Customer', 'U') IS NOT NULL DROP TABLE test_Customer GO CREATE TABLE test_Customer ( id int identity(1000, 1) PRIMARY KEY, Surname varchar(50), Initials varchar(50), SEX_CODE varchar(50) ) GO IF OBJECT_ID('Sp_test_SaveCustomer', 'P') IS NOT NULL DROP PROCEDURE Sp_test_SaveCustomer GO CREATE PROCEDURE Sp_test_SaveCustomer ( @id int, @Surname varchar(50), @Initials varchar(50), @SEX_CODE varchar(50) ) AS BEGIN Declare @RESULT int SET @RESULT = 0 IF (@id=-1) BEGIN INSERT INTO test_Customer(Surname,Initials,SEX_CODE) VALUES (@Surname, @Initials, @SEX_CODE) SET @RESULT = Cast(SCOPE_IDENTITY() AS int) END ELSE BEGIN UPDATE test_Customer SET Surname= @Surname, Initials =@Initials, SEX_CODE =@SEX_CODE WHERE id = @id SET @RESULT = @id END RETURN @RESULT END GO Declare @identity int exec @identity = dbo.Sp_test_SaveCustomer -1, 'Scott', 'SAK', 'M' PRINT Cast(@identity AS varchar) exec @identity = dbo.Sp_test_SaveCustomer 1000, 'Scott2', 'SAK', 'F' PRINT Cast(@identity AS varchar) SELECT * FROM test_Customer
Results in:
text Syntax (Toggle Plain Text)
(1 row(s) affected) 1000 (1 row(s) affected) 1000 (1 row(s) affected)
And the final data:
text Syntax (Toggle Plain Text)
id Surname Initials SEX_CODE ----------- ---------- ---------- ---------- 1000 Scott2 SAK F
![]() |
Similar Threads
- Stored Procedures Help please (MySQL)
- the difference between Stored procedures temporary tables (MS SQL)
- Code generator that produces SQL Stored Procedures (VB.NET)
- how can Stored procedures be used in oracle reports for creating reports? (Oracle)
- How to Execute stored procedures in a javascript or vbscript function (ASP)
- Triggers Loop or Stored Procedures Loop (MS SQL)
- Assigning Foreign Keys (Database Design)
- Calling Oracle Stored Procedures with ASP (ASP)
Other Threads in the MS SQL Forum
- Previous Thread: is there a way to make an image data type as index?
- Next Thread: Connect by prior command
| Thread Tools | Search this Thread |
Tag cloud for MS SQL
"last autogrowth business connectingtodatabaseinuse count cursor data database dateadd datepart day" dbsize deadlock delete_trigger getdate highperformancecomputing hpc hpcserver2008 ibm iis limit loop maximum microsoft ms mssql multiple multithreading news number permission position query reporting result server services sets single source sql sqlserver sqlserver2005 subtype supercomputing supertype tables uniqueid update view weekday






