Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Write a stored procedure that inserts a new row into the Supplier table and then adds at least one new product that the new supplier

Write a stored procedure that inserts a new row into the Supplier table and then adds at least one new product that the new supplier stocks into the Products table. This program must include the ability to handle a failed transaction in which case it should issue an error message and a rollback.

Note:

The ProductID in the Products table is auto-generated (Identity Specification is set to Yes). This means that Northwind only gets a certain product from a single Supplier.

In other words, Chai is only gotten from SupplierID = 1 which is Exotic Liquids.

Answer

A partial solution:

CREATE PROCEDURE AddSupplierProduct01

--The first set of columns information is for the Supplier table...

--This information is for the Product table...

AS

BEGIN TRANSACTION

INSERT Suppliers (CompanyName, ContactName, Address, City, Region,PostalCode, Country, Phone)

VALUES (@CompanyName, @ContactName, @Address, @City, @Region, @PostalCode, @Country, @Phone)

IF @@error <> 0

BEGIN

ROLLBACK TRAN

RETURN

END

DECLARE @InsertSupplierID int

SELECT @InsertSupplierID=@@identity

INSERT Products (ProductName, SupplierID, CategoryID, QuantityPerUnit, Discontinued)

VALUES (@ProductName, @InsertSupplierID, @CategoryID, @QuantityPerUnit, @Discontinued)

IF @@error <> 0

BEGIN

ROLLBACK TRAN

RETURN

END

COMMIT TRANSACTION

Another partial solution:

BEGIN TRY

BEGIN TRAN;

INSERT Suppliers

VALUES(@CompanyName, @ContactName, @ContactTitle, @Address, @City, @Region, @PostalCode, @Country, @Phone, @Fax, @HomePage)

DECLARE @SupplierID int

SELECT @SupplierID = SCOPE_IDENTITY()

INSERT Products

VALUES(@ProductName, @SupplierID, @CategoryID, @QuantityPerUnit, @UnitPrice, @UnitsInStock, @UnitsOnOrder, @ReorderLevel, @Discontinued)

COMMIT TRAN;

END TRY

BEGIN CATCH

ROLLBACK TRAN;

Print 'An error occured and the row was not added. Please try again.'

END CATCH;

here is the SQL to create the Northwind database if needed: https://drive.google.com/file/d/10GdPihPBe7iAzMBZG9b7zDa4qzJm9v2H/view?usp=sharing

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access with AI-Powered Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions

Question

design a pert chart diagram based on sports facilities

Answered: 1 week ago