2011
Phase 1 Individual Project
Assignment #1
[PHASE 1 – ASSIGNMENT # 1]
Sheku Sesay
This document contains DDL scripts and screen shot of ER diagram of CCI database Inventory
management system.
Table of Contents
CCI Database DDL scripts.....................................................................................................................3
ER Diagram.........................................................................................................................................6
References...........................................................................................................................................7
CCI Database DDL scripts
tbl_Categories
DROP TABLE [dbo].[tbl_Categories];
CREATE TABLE [dbo].[tbl_Categories](
[CategoryId] [bigint] IDENTITY(1,1) NOT NULL,
[CategoryName] [varchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT
NULL,
[Description] [varchar](250) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
CONSTRAINT [PK_tbl_Categories] PRIMARY KEY CLUSTERED
(
[CategoryId] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
tbl_Products
DROP TABLE [dbo].[tbl_Products];
CREATE TABLE [dbo].[tbl_Products](
[ProductId] [bigint] IDENTITY(1,1) NOT NULL,
[CategoryRef] [bigint] NOT NULL,
[SKU] [char](10) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Name] [varchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Description] [varchar](250) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[SellingPrice] [numeric](18, 2) NOT NULL,
[MinimumQuantity] [bigint] NOT NULL,
[MaximumQuantity] [bigint] NOT NULL,
[CreatedDate] [datetime] NOT NULL,
[IsActive] [bit] NOT NULL CONSTRAINT [DF_tbl_Products_IsActive] DEFAULT
((1)),
CONSTRAINT [PK_tbl_Product] PRIMARY KEY CLUSTERED
(
[ProductId] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
ALTER TABLE [dbo].[tbl_Products] WITH CHECK ADD CONSTRAINT
[FK_tbl_Product_tbl_Categories] FOREIGN KEY([CategoryRef])
REFERENCES [dbo].[tbl_Categories] ([CategoryId])
GO
ALTER TABLE [dbo].[tbl_Products] CHECK CONSTRAINT
[FK_tbl_Product_tbl_Categories]
tbl_Vendors
DROP TABLE [dbo].[tbl_Vendors];
CREATE TABLE [dbo].[tbl_Vendors](
[VendorId] [bigint] IDENTITY(1,1) NOT NULL,
[CompanyName] [varchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT
NULL,
[ContactName] [varchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT
NULL,
[Address] [varchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[TelephoneNo] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT
NULL,
[FaxNo] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[EmailAddress] [varchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT
NULL,
[IsActive] [bit] NOT NULL CONSTRAINT [DF_tbl_Vendors_IsActive] DEFAULT
((1)),
CONSTRAINT [PK_tbl_Vendors] PRIMARY KEY CLUSTERED
(
[VendorId] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
tbl_ProductVendors
DROP TABLE [dbo].[tbl_ProductVendors];
CREATE TABLE [dbo].[tbl_ProductVendors](
[ProductVendorId] [bigint] IDENTITY(1,1) NOT NULL,
[ProductRef] [bigint] NOT NULL,
[VendorRef] [bigint] NOT NULL,
[IsPreferred] [bit] NOT NULL CONSTRAINT
[DF_tbl_ProductVendors_IsPreferred] DEFAULT ((1)),
CONSTRAINT [PK_tbl_ProductVendors] PRIMARY KEY CLUSTERED
(
[ProductVendorId] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[tbl_ProductVendors] WITH CHECK ADD CONSTRAINT
[FK_tbl_ProductVendors_tbl_Products] FOREIGN KEY([ProductRef])
REFERENCES [dbo].[tbl_Products] ([ProductId])
GO
ALTER TABLE [dbo].[tbl_ProductVendors] CHECK CONSTRAINT
[FK_tbl_ProductVendors_tbl_Products]
GO
ALTER TABLE [dbo].[tbl_ProductVendors] WITH CHECK ADD CONSTRAINT
[FK_tbl_ProductVendors_tbl_Vendors] FOREIGN KEY([VendorRef])
REFERENCES [dbo].[tbl_Vendors] ([VendorId])
GO
ALTER TABLE [dbo].[tbl_ProductVendors] CHECK CONSTRAINT
[FK_tbl_ProductVendors_tbl_Vendors]
tbl_ProductQuantity
DROP TABLE [dbo].[tbl_ProductQuantity];
CREATE TABLE [dbo].[tbl_ProductQuantity](
[ProductQuantityId] [bigint] NOT NULL,
[ProductRef] [bigint] NOT NULL,
[Quantity] [bigint] NOT NULL,
CONSTRAINT [PK_tbl_ProductQuantity] PRIMARY KEY CLUSTERED
(
[ProductQuantityId] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[tbl_ProductQuantity] WITH CHECK ADD CONSTRAINT
[FK_tbl_ProductQuantity_tbl_Products] FOREIGN KEY([ProductRef])
REFERENCES [dbo].[tbl_Products] ([ProductId])
GO
ALTER TABLE [dbo].[tbl_ProductQuantity] CHECK CONSTRAINT
[FK_tbl_ProductQuantity_tbl_Products]
tbl_ProductTransactions
DROP TABLE [dbo].[tbl_ProductTransactions];
CREATE TABLE [dbo].[tbl_ProductTransactions](
[ProductTransactionId] [bigint] IDENTITY(1,1) NOT NULL,
[ProductRef] [bigint] NOT NULL,
[EmployeeRef] [bigint] NOT NULL,
[Quantity] [bigint] NOT NULL,
CONSTRAINT [PK_tbl_ProductTransactions] PRIMARY KEY CLUSTERED
(
[ProductTransactionId] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[tbl_ProductTransactions] WITH CHECK ADD CONSTRAINT
[FK_tbl_ProductTransactions_tbl_Employees] FOREIGN KEY([EmployeeRef])
REFERENCES [dbo].[tbl_Employees] ([EmployeeId])
GO
ALTER TABLE [dbo].[tbl_ProductTransactions] CHECK CONSTRAINT
[FK_tbl_ProductTransactions_tbl_Employees]
GO
ALTER TABLE [dbo].[tbl_ProductTransactions] WITH CHECK ADD CONSTRAINT
[FK_tbl_ProductTransactions_tbl_Products] FOREIGN KEY([ProductRef])
REFERENCES [dbo].[tbl_Products] ([ProductId])
GO
ALTER TABLE [dbo].[tbl_ProductTransactions] CHECK CONSTRAINT
[FK_tbl_ProductTransactions_tbl_Products]
tbl_Employees
DROP TABLE [dbo].[tbl_Employees];
CREATE TABLE [dbo].[tbl_Employees](
[EmployeeId] [bigint] IDENTITY(1,1) NOT NULL,
[FirstName] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[LastName] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[PhoneNo] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[JobTitle] [varchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
CONSTRAINT [PK_tbl_Employees] PRIMARY KEY CLUSTERED
(
[EmployeeId] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
ER Diagram
References
SQL: Visual Quickstart Guide [Chris Fehily]
Inside Microsoft® SQL Server® 2008: T-SQL Querying [Itzik Ben-Gan, Lubor Kollar, Dejan
Sarka, Steve Kass]
http://www.sqlservertutorials.com/introduction_to_t-sql.html
http://www.java2s.com/Tutorial/SQLServer/CatalogSQLServer.htm